$envmapmask
From Valve Developer Community
Revision as of 17:20, 25 January 2009 by Craziestdan (Talk | contribs)
$envmapmask defines a specular mask, which affects how strongly each pixel of a material reflects light from the $envmap. The mask should be a greyscale image in which entirely reflective areas are white and entirely matte areas are black
$envmapmask will not work in model materials using $bumpmap. See #Alternative_methods.VMT syntax example
$envmapmask <texture>
VertexLitGeneric { $envmap env_cubemap $envmapmask "props/tvscreen_test" }
Additional parameters
npc_cscanner's mask.
-
$envmapmasktransform <matrix> - Adjusts UV mapping of the specular mask.
- DirectX 8 and below use
$envmapmaskscaleinstead.
- The default position is
"center .5 .5 scale 1 1 rotate 0 translate 0 0".-
centerdefines the point of rotation. Only useful ifrotateis being used. -
scalefits the texture into the material the given number of times. '2 1' is a 50% scale in the X axis. -
rotaterotates the texture anti-clockwise. Accepts any number, including negatives. -
translateshifts the texture by the given number of heights/widths. '.5' will shift it half-way.
-
Note:All values must be included!
-
$envmapmaskscale <float> - Scales the specular mask by the given value.
- See also
$envmapmasktransform, above. - Requires DirectX 8.
-
$envmapmaskframe <integer> - The frame to start an animated specular mask on.
Alternative methods
Rather than creating a whole new texture just for a specular mask, you can use the alpha channel of either the $basetexture or $bumpmap. Note that this unfortunately won't reduce the overall amount of data on-disk or in-memory.
If you do use these commands, transformations and other such parameters applied to the base texture/bump map will also apply to the specular mask.
-
$basealphaenvmapmask <bool> - Use the alpha channel of
$basetextureas the specular mask. - When putting your specular map in the alpha channel you will have to invert it, or else it will work the wrong way round.
-
$normalmapalphaenvmapmask <bool> - Use the alpha channel of
$bumpmapas the specular mask. - This must be used if the model material has a bump map.
See Also
- $basetexture
- $envmap (environment map)
- $phong (diffuse reflection)
- $selfillum
