UnlitGeneric: Difference between revisions
No edit summary |
|||
Line 2: | Line 2: | ||
'''<code>UnlitGeneric</code>''' draws an [[albedo]] without standard lighting passes. It is used for things like UI images, pure white, and pitch blackness, but also in situations when software lighting is used (like on [[detail prop]]s). It accepts only the most rudimentary of VMT commands. | '''<code>UnlitGeneric</code>''' draws an [[albedo]] without standard lighting passes. It is used for things like UI images, pure white, and pitch blackness, but also in situations when software lighting is used (like on [[detail prop]]s). It accepts only the most rudimentary of VMT commands. | ||
== Supported Parameters == | == Supported Parameters == | ||
Line 19: | Line 10: | ||
;{{ent|$detail}} | ;{{ent|$detail}} | ||
: Detail texturing. | : Detail texturing. | ||
;{{ent|$nofog}} | |||
: Prevents fog from overdrawing a material. | |||
;{{ent|$surfaceprop}} | |||
: Links the surface to a set of physical properties. | |||
;{{ent|$translucent}} | ;{{ent|$translucent}} | ||
: Specifies that the material should be partially see-through. | : Specifies that the material should be partially see-through. | ||
Line 26: | Line 21: | ||
{{MatParam|[[$receiveflashlight]]|bool|Allow the player's flashlight to illuminate the material.}} | {{MatParam|[[$receiveflashlight]]|bool|Allow the player's flashlight to illuminate the material.}} | ||
{{MatParam|[[$singlepassflashlight]]|bool|Possibly used to allow shadows to form from this decal. For example, found in L4D2 decals/detail/ruraldetailsprites.vmt {{todo|confirm.}}}} | {{MatParam|[[$singlepassflashlight]]|bool|Possibly used to allow shadows to form from this decal. For example, found in L4D2 decals/detail/ruraldetailsprites.vmt {{todo|confirm.}}}} | ||
== Caveats == | |||
=== Projected Texture Bugs === | |||
If a [[Skybox]] has an '''<code>UnlitGeneric</code>''' shader applied to it, some visual bugs can occur. Notably, if a projected texture is shone near a Skybox using an '''<code>UnlitGeneric</code>''' shader, the Skybox will appear to ignore surrounding geometry and phase through walls for as long as the projected texture is active. | |||
To fix this, ensure that a [[Sky_camera]] exists in the world, typically in its own box which exists outside of the rest of the map. | |||
Preferably, use the purpose-built [[Sky_(shader)|sky shader]] instead. | |||
=== Models === | |||
If this shader is being used on a [[model]], you must specify <code>[[$model|$model 1]]</code> to prevent errors. | |||
=== Mapbase === | |||
Unlit materials in [[Mapbase]] should have the shader '''<code>SDK_UnlitGeneric</code>'''. | |||
[[Category:Shaders]] | [[Category:Shaders]] | ||
[[Category:Stubs]] | [[Category:Stubs]] |
Revision as of 04:56, 16 October 2021
UnlitGeneric
draws an albedo without standard lighting passes. It is used for things like UI images, pure white, and pitch blackness, but also in situations when software lighting is used (like on detail props). It accepts only the most rudimentary of VMT commands.
Supported Parameters
- $alpha
- Expensive and cheap transparency.
- $color
- Color tinting.
- $detail
- Detail texturing.
- $nofog
- Prevents fog from overdrawing a material.
- $surfaceprop
- Links the surface to a set of physical properties.
- $translucent
- Specifies that the material should be partially see-through.
Additional Parameters
[[$receiveflashlight|$receiveflashlight]]
[[$singlepassflashlight|$singlepassflashlight]]
Caveats
Projected Texture Bugs
If a Skybox has an UnlitGeneric
shader applied to it, some visual bugs can occur. Notably, if a projected texture is shone near a Skybox using an UnlitGeneric
shader, the Skybox will appear to ignore surrounding geometry and phase through walls for as long as the projected texture is active.
To fix this, ensure that a Sky_camera exists in the world, typically in its own box which exists outside of the rest of the map.
Preferably, use the purpose-built sky shader instead.
Models
If this shader is being used on a model, you must specify $model 1
to prevent errors.
Mapbase
Unlit materials in Mapbase should have the shader SDK_UnlitGeneric
.