VertexLitGeneric: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(→‎Lighting: $lightmap)
Line 12: Line 12:
{{MatParam|$color2|RGB matrix|[[$color#Models|Color tinting]].}}
{{MatParam|$color2|RGB matrix|[[$color#Models|Color tinting]].}}
{{MatParam|$basetexturetransform|matrix|[[$basetexture#.24basetexturetransform|Transform]] [[$basetexture]]'s alignment, scale, rotation and position.}}
{{MatParam|$basetexturetransform|matrix|[[$basetexture#.24basetexturetransform|Transform]] [[$basetexture]]'s alignment, scale, rotation and position.}}
{{MatParam|[[$allowdiffusemodulation]]|bool|Prevents the model's material from being tinted by [[$color2]] or <code>rendercolor.</code>|since={{l4d}}}}
{{MatParam|$allowdiffusemodulation|bool|Prevents the model's material from being tinted by [[$color2]] or <code>rendercolor.</code>|since={{l4d}}}}
{{MatParam|$seperatedetailuvs|bool|{{todo|''Confirm use of texcoord1 for [[$detail|detail]] texture''}}|since={{src07}}}}
{{MatParam|$seperatedetailuvs|bool|{{todo|''Confirm use of texcoord1 for [[$detail|detail]] texture''}}|since={{src07}}}}
{{MatParam|$desaturatewithbasealpha|float|Use the base alpha to desaturate the base texture. Set to non-zero to enable, value gets multiplied into the alpha channel before desaturating.|since={{as}}}}
{{MatParam|$desaturatewithbasealpha|float|Use the base alpha to desaturate the base texture. Set to non-zero to enable, value gets multiplied into the alpha channel before desaturating.|since={{as}}}}

Revision as of 19:39, 25 June 2023

English (en)Français (fr)中文 (zh)Translate (Translate)

VertexLitGeneric is a material shader available in all Source games. It is the shader most commonly used to render models, and supports a variety of effects.

Supported Parameters

Basics

$basetexture $detail $decaltexture

Adjustment

$color2 $basetexturetransform $allowdiffusemodulation $seperatedetailuvs $desaturatewithbasealpha [[$notint|$notint]]

Transparency

VertexLitGeneric support a few different methods for transparency, each for different purposes $alpha $alphatest $nocull $translucent $additive $distancealpha

Lighting

$bumpmap $lightwarptexture $halflambert $selfillum $emissiveblendenabled $lightmap

Reflection

$envmap $phong $rimlight

Effect

$compress $stretch $flesh $treeSway

Technical Workarounds

$flashlightnolambert $lowqualityflashlightshadows $allowfencerenderstatehack $disablecsmlookup

Cloak

VertexLitGeneric natively supports the Spy cloak effect from Team Fortress 2 Team Fortress 2 . You will want to combine it with a sine wave proxy for the full effect.

$cloakpassenabled $cloakfactor $cloakcolortint $refractamount

Caveats

Mapbase

Unlit materials in Mapbase should have the shader SDK_VertexLitGeneric.

See also