Half Lambert: Difference between revisions
TomEdwards (talk | contribs) (uncat) |
SirYodaJedi (talk | contribs) |
||
(8 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
[[ | [[File:Alyx_lambert_half_lambert.jpg|right|200px|thumb|Alyx model showing Lambertian lighting (left) and Half Lambert lighting (right)]] | ||
'''Half Lambert lighting''' is a technique designed to prevent the rear of an object losing its shape and looking too flat. | |||
Half Lambert is a completely non-physical technique{{clarify}} and gives a purely percieved visual enhancement and is an example of a forgiving lighting model. | |||
== Games == | |||
{{stub|section=1}} | |||
# {{hl|4}} | |||
==Implementation== | |||
[[File:Lambert vs halflambert.png|right|200px|thumb|The Lambertian dot product lobe (red) vs. the Half Lambertian dot product lobe (blue)]] | |||
To soften the diffuse contribution from local lights, the dot product from the [[wikipedia:Lambert's cosine law|Lambertian model]] is scaled by ½, add ½ and squared. The result is that this dot product, which normally lies in the range of -1 to +1, is instead in the range of 0 to 1 and has a more pleasing falloff. | |||
== See | In the original {{hl1|4.1}}, where this diffuse Half Lambert term was the only term in most of the model lighting, it kept the characters in particular from being lit exclusively by a constant ambient term on the back side with respect to a given light source. | ||
* [[$halflambert]] - [[VMT]] shader | |||
In {{src|4.1}}, Half Lambert lighting can most often be seen being used on the characters face materials. It is enabled by the use of {{mono|[[$halflambert]]}} within a material's [[VMT]] file, and is forced on when {{mono|[[$phong]]}} is used in most games. | |||
==See also== | |||
* [[$halflambert]] - [[VMT]] shader parameter to enable Half-Lambert lighting. | |||
[[Category:GoldSrc]] | |||
[[Category:Source]] | |||
[[Category:Material System]] | [[Category:Material System]] | ||
Latest revision as of 11:38, 9 April 2025
Half Lambert lighting is a technique designed to prevent the rear of an object losing its shape and looking too flat.
Half Lambert is a completely non-physical technique[Clarify] and gives a purely percieved visual enhancement and is an example of a forgiving lighting model.
Games
Implementation
To soften the diffuse contribution from local lights, the dot product from the Lambertian model is scaled by ½, add ½ and squared. The result is that this dot product, which normally lies in the range of -1 to +1, is instead in the range of 0 to 1 and has a more pleasing falloff.
In the original Half-Life, where this diffuse Half Lambert term was the only term in most of the model lighting, it kept the characters in particular from being lit exclusively by a constant ambient term on the back side with respect to a given light source.
In Source, Half Lambert lighting can most often be seen being used on the characters face materials. It is enabled by the use of $halflambert within a material's VMT file, and is forced on when $phong is used in most games.
See also
- $halflambert - VMT shader parameter to enable Half-Lambert lighting.