Wrinkle maps
WrinkleMaps are texture maps that accompany wrinkles in low polygon models for games. Since there is a limit to the amount of polygons a model can be for game engines artists bake out these so called wrinklemaps from the high polygon meshes and utilize them in the engine to produce the same render as if it was a high polygon model. This same concept is also done with normalmaps and is very useful in game engines. Source has no documentation of wrinklemaps so I have decided to write this article to help other people understand the concept and learn how to go about producing them for Source.


The WrinkleMap diference
Here is a picture showing the difference of utilizing this feature.
As you can see in the left picture the creases on his left cheek and forehead as apposed to the one without wrinkles.
Textures
Wrinklemaps in Source work with two different textures you can examples inside the Left 4 Dead files located at L4D root/materials/models/survivors/coach/
Using WrinkleMaps
Example VMT Syntax
The following example is taken from one of the characters that will be shown in AlleyProject
"vertexlitgeneric" { "$compress" "models/cra0kalo/kovic/Kovic_compress" "$stretch" "models/cra0kalo/kovic/Kovic_stretch" "$bumpcompress" "models/cra0kalo/kovic/Kovic_normal_compress" "$bumpstretch" "models/cra0kalo/kovic/Kovic_normal_stretch" }
VMT Parameters
The following is a list of VMT parameters that are needed to enable the WrinkleMaps:
$compress "path/to/vtf"
-Compression wrinklemap diffuse$stretch "path/to/vtf"
-Expansion wrinklemap diffuse$bumpcompress "path/to/vtf"
-Compression wrinklemap normal$bumpstretch "path/to/vtf"
-Expansion wrinklemap normal
Other VMT Params
// ------------------------------------ // Displacement Maps // ------------------------------------ // Displacement map "$displacementmap" "models/cra0kalo/basetexture" // Displacement map contains wrinkle displacements "$displacementwrinkle" "0" //boolean