$envmapmask: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (→See Also) |
||
Line 57: | Line 57: | ||
==See Also== | ==See Also== | ||
*[[$envmap]] | |||
* compare [[$phong]]. | * compare [[$phong]]. | ||
Line 63: | Line 64: | ||
[[Category:List of Shader Parameters]] | [[Category:List of Shader Parameters]] | ||
[[Category:VMT Reflections]] | [[Category:VMT Reflections]] | ||
[[Category:VMT Texture Reference]] |
Revision as of 15:01, 5 April 2008
- The specular map or envmapmask affects how the surface reflects light from the $envmap.
- The (greyscale) envmapmask defines shiney areas as black (0), and dull areas as white (255).
"$envmapmask" <texture>
- Masks the $envmap reflections according to the alpha channel of the named
<texture>
.
VMT syntax example
"VertexLitGeneric" { "$envmapmask" "props/tvscreen_test" "$envmapmasktransform" "center .5 .5 scale .25 .25 rotate 0 translate 0 0" //dx9 only "$envmapmaskscale" .25 //duplicates dx9 transform/scale (25%) for dx8 GPUs "$envmapmaskframe" ??? "$selfillum_envmapmask_alpha" 1 //dx9 only }
Additional Parameters
$envmapmasktransform
"$envmapmasktransform" <matrix>
- Adjusts UV mapping of $envmapmask
- The default is "center .5 .5 scale 1 1 rotate 0 translate 0 0".
- DirectX 9 or HDR required. (LightmappedGeneric, VertexlitGeneric, UnlitGeneric)
- DirectX 8 uses $envmapmaskscale instead.
$envmapmaskscale
"$envmapmaskscale" <float>
- Scales the $envmapmask by the <float> value.
- DirectX 8 required. (LightmappedGeneric, VertexlitGeneric, UnlitGeneric)
- Also see $envmapmasktransform.
$envmapmaskframe
"$envmapmaskframe" <integer>
- ?
$selfillum_envmapmask_alpha
$selfillum_envmapmask_alpha <float>
- Defines that selfillum value comes from envmap mask alpha. {{todo|confirm: ie it uses the alpha channel of $envmapmask
- Default value is 0.0.
- Requires DirectX 9.
- A new parameter.
- See also $selfillum
Alternative Methods
- Rather than creating a whole new VTF just for the $envmapmask, you can use the alpha channel of either the $basetexture or $bumpmap to store the Specular Map. If so, transform, etc parameters applied to the basetexture/normalmap will also apply to the Specular map.
$basealphaenvmapmask
"$basealphaenvmapmask" 1
- Use the alpha channel of the $basetexture texture as the specular map.
$normalmapalphaenvmapmask
"$normalmapalphaenvmapmask" 1
- Use the alpha channel of the $bumpmap texture as the specular map.