$lightwarptexture: Difference between revisions
Jump to navigation
Jump to search
Note:
Warning:Requires phong on
.
Deprecated (talk | contribs) (Changed warning about phong and $lightwarptexture; works without phong on some games tested, obviously only applies to VertexLitGeneric) |
Deprecated (talk | contribs) m (Removed redundant spaces, typo fixed) |
||
Line 3: | Line 3: | ||
[[File:Lightwarp BW.png|thumb|150px|Posterised colour can be achieved, but lighting must be tightly controlled.]] | [[File:Lightwarp BW.png|thumb|150px|Posterised colour can be achieved, but lighting must be tightly controlled.]] | ||
[[File:Celshadingpreview.png|thumb|250px|Cel shading in action.]] | [[File:Celshadingpreview.png|thumb|250px|Cel shading in action.]] | ||
'''<code>$lightwarptexture</code>''' {{dx9}} is a [[material]] parameter that tints [[texel]]s depending on their brightness. It can be thought of as localised [[color correction]]. | '''<code>$lightwarptexture</code>''' {{dx9}} is a [[material]] parameter that tints [[texel]]s depending on their brightness. It can be thought of as localised [[color correction]]. | ||
{{note|<code>$lightwarptexture</code> must be specified ''after'' all other textures, otherwise it will overwrite them.}} | {{note|<code>$lightwarptexture</code> must be specified ''after'' all other textures, otherwise it will overwrite them.}} | ||
{{warning|Requires [[phong]] on <code>[[VertexLitGeneric]]</code> in {{css}}.}} | {{warning|Requires [[phong]] on <code>[[VertexLitGeneric]]</code> in {{css}}.}} | ||
:{{todo|Do games other than {{css}} require phong for this work?}} | :{{todo|Do games other than {{css}} require phong for this to work?}} | ||
== Lightwarp textures == | == Lightwarp textures == |
Revision as of 22:29, 14 May 2019
$lightwarptexture
(DX9 SM2) is a material parameter that tints texels depending on their brightness. It can be thought of as localised color correction.

$lightwarptexture
must be specified after all other textures, otherwise it will overwrite them.
VertexLitGeneric
in 
Lightwarp textures
A lightwarp texture is a one-dimensional strip of pixels. Dark texels will be tinted with the colour on the left-hand side, and bright texels with the colour on the right. 50% gray means no tint.
Examples
snow_warp
- This is the lightwarp texture used in the DOD Source screen to the right. It is designed to add a subtle bluish tint to darker snow, without affecting brighter regions.
pyro_lightwarp
- This is applied to all TF2 characters, not just Pyro. It creates the high-contrast shadows with red-tinged terminators typical of the illustrative art the game apes.
- Posterised
- This custom warp texture creates a posterised "line art" style. Enabling lightwarp alone isn't enough however: ambient lighting must be at 0 to make unlit areas black, and world lighting must become viewer-dependent to ensure that shadows are always cast.
Cel Shading
- Cel shading can make objects look more cartoony, by replacing the smooth lighting gradient with sharp steps.
Other possible uses of $lightwarptexture
include contrast enhancement, tweaking vertex lighting shadow transitions, highlight softening and more.