From Valve Developer Community
Jump to: navigation, search

Teeth is a material shader available in all Source games. It is a shader for teeth that is used to dynamically adjust the brightness of the teeth based on how open the mouth is.

Note.png Note: This shader is likely obsolete, as Valve hasn't used it for any of their recent games. Instead, they include teeth on their facemaps, using the shader VertexLitGeneric.
To do: Add an image showing the teeth.


$basetexture <texture>
Texture for the teeth.
$halflambert <boolean>
Enables half-lambertian lighting. Default 1.
$clientshader "MouthShader"
To do: What does this actually do?
$illumfactor <float>
Modifies the amount the teeth are brightened or darkened by. Default 1.
$forward <vector>
Forward direction vector for teeth lighting. Default "[1 0 0]".
$bumpmap <texture>  (DX9+)
Bumpmap for the teeth. Enables phong specular, and uses the alpha channel of the bumpmap as a mask if present.
$phongexponent <float>  (DX9+)
Exponent for the specular. Overrides the bumpmap's alpha mask if one is present. Default 100.

Other parameters

$intro <boolean>
Teeth are used on a model in Episode 1's intro cutscene. Adds another shader pass.
$warpparam <float>
Requires $intro 1. How far into the warp animation we are.
$entityorigin <vector>
Requires $intro 1. World-space location of the entity, required to correctly animate the warp.