Teeth
Jump to navigation
Jump to search
Teeth
is a special shader used specifically for the teeth in Half-Life 2. It is used to dynamically adjust the brightness of the teeth based on how open the mouth is.
Note:This shader is likey obsolete, as Valve hasn't used it for any of their recent games. Instead, they include teeth on their facemaps, using the shader
VertexLitGeneric.
- Todo: Add an image showing the teeth.
Parameters
$basetexture <texture>
- Texture for the teeth.
$halflambert <bool>
- Enables half-lambertian lighting. Default
1.
$clientshader "MouthShader"
- Todo: 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 SM2)- Bumpmap for the teeth. Enables phong specular, and uses the alpha channel of the bumpmap as a mask if present.
$phongexponent <float>
(DX9 SM2)- Exponent for the specular. Overrides the bumpmap's alpha mask if one is present. Default
100
.
Other parameters
$intro <bool>
- 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 <vector3>
- Requires
$intro 1
. World-space location of the entity, required to correctly animate the warp.