$halflambert: Difference between revisions
Jump to navigation
Jump to search

Important:In stock shaders for
to
, half-lambertian lighting is forcibly enabled on VertexLitGeneric regardless of $halflambert setting when $phong is enabled, unless $phongdisablehalflambert(in all games since
) is enabled.
Important:Not designed for static props:
SirYodaJedi (talk | contribs) (Eh, I'll add workarounds to the %alphatexture page instead) Tag: Manual revert |
SirYodaJedi (talk | contribs) No edit summary |
||
| Line 4: | Line 4: | ||
{{This is a|shader parameter|name=$halflambert|shader=VertexLitGeneric|shader1=Teeth|shader2=EyeRefract|shader3=VortWarp|shader4=Infected (shader)}} It is a boolean parameter that enables [[Half Lambert|half-lambertian]] lighting, which wraps lighting further around a model to prevent it from losing definition. It only works on models. | {{This is a|shader parameter|name=$halflambert|shader=VertexLitGeneric|shader1=Teeth|shader2=EyeRefract|shader3=VortWarp|shader4=Infected (shader)}} It is a boolean parameter that enables [[Half Lambert|half-lambertian]] lighting, which wraps lighting further around a model to prevent it from losing definition. It only works on models. | ||
{{important|In stock shaders for {{src07}} to {{portal2branch}}, half-lambertian lighting is forcibly enabled on | {{important|In stock shaders for {{src07}} to {{portal2branch}}, half-lambertian lighting is forcibly enabled on {{mono|VertexLitGeneric}} regardless of {{mono|$halflambert}} setting when {{codelink|$phong}} is enabled, unless {{codelink|$phongdisablehalflambert}}{{as|since}} is enabled.}} | ||
{{note|This parameter is forcibly disabled since {{csgo}} due to conflicts with cascade shadow mapping.}} | {{note|This parameter is forcibly disabled since {{csgo}} due to conflicts with cascade shadow mapping.}} | ||
{{important|Not designed for static props: | {{important|Not designed for static props: | ||
* Does not work on [[static prop]]s which have lighting baked [[VHV|per-vertex]] or [[PPL|into lightmaps]] in stock [[VRAD]]; this could be achieved with a custom VRAD. | * Does not work on [[static prop]]s which have lighting baked [[VHV|per-vertex]] or [[PPL|into lightmaps]] in stock [[VRAD]]; this could be achieved with a custom VRAD. | ||
* Shadows cast by static props will always be full-lambertian. This could potentially be worked around by using an {{cmd|%alphatexture}} with half opacity. | * Shadows cast by static props will always be full-lambertian. {{confirm|This could potentially be worked around by using an {{cmd|%alphatexture}} with half opacity.}} | ||
}} | }} | ||
Latest revision as of 17:31, 7 November 2025
$halflambert is a material shader parameter for the VertexLitGeneric, Teeth, EyeRefract, VortWarp, and Infected (shader) shader available in all
Source games. It is a boolean parameter that enables half-lambertian lighting, which wraps lighting further around a model to prevent it from losing definition. It only works on models.
- Does not work on static props which have lighting baked per-vertex or into lightmaps in stock VRAD; this could be achieved with a custom VRAD.
- Shadows cast by static props will always be full-lambertian.
Confirm:This could potentially be worked around by using an %alphatexturewith half opacity.
Syntax
$halflambert 1