$basetexture: Difference between revisions
Jump to navigation
Jump to search
TeamSpen210 (talk | contribs) (Add description for the $frame shader variable) |
(→Additional parameters: info regarding the TODO was added to Template:VMT UVtransform. Tell me if that was not what was wanted.) |
||
Line 16: | Line 16: | ||
; <code>$basetexturetransform <matrix></code> | ; <code>$basetexturetransform <matrix></code> | ||
: Transforms the texture before use in the material. | : Transforms the texture before use in the material. This does not affect [[lightmaps]] on the surface. | ||
{{VMT UVtransform}} | {{VMT UVtransform}} | ||
; <code>$basetextureoffset <[[normal]]></code> | ; <code>$basetextureoffset <[[normal]]></code> | ||
Line 22: | Line 22: | ||
; <code>$basetexturescale <normal></code> | ; <code>$basetexturescale <normal></code> | ||
: {{TODO|DX8 version of scale?}} | : {{TODO|DX8 version of scale?}} | ||
; <code>$frame <int></code> | ; <code>$frame <int></code> |
Revision as of 16:11, 18 May 2018
Template:Otherlang2 The $basetexture VMT command defines an albedo texture. It is very rare for a material not to use this parameter and some shaders will load a default texture if it stays undefined.
VMT syntax
$basetexture <texture without extension, relative to <game>\materials\>
LightmappedGeneric { $basetexture brick\brickwall031b }
Additional parameters
$basetexturetransform <matrix>
- Transforms the texture before use in the material. This does not affect lightmaps on the surface.
- The default position is center .5 .5 scale 1 1 rotate 0 translate 0 0.
- center defines the point of rotation. Only useful if rotate is being used.
- scale fits the texture into the material the given number of times. 2 1 is a 50% scale in the horizontal X axis while the vertical Y axis is still at original scale.
- rotate rotates the texture counter-clockwise in degrees. Accepts any number, including negatives.
- translate shifts the texture by the given numbers. .5 will shift it half-way. 1 will shift it once completely over, which is the same as not moving it at all.
Note:All values must be included!
Bug:Scaling the texture may cause odd issues where the Texture Lock tool in Hammer will not actually lock the texture in place. [todo tested in ?]
Bug:Rotating textures applied on brushes will rotate around the map origin (confirm: Orangebox engine only?). A fix for this is to change the center position in the VMT to the brush's origin. [todo tested in ?]
$basetextureoffset <normal>
- Todo: DX8 version of translate?
$basetexturescale <normal>
- Todo: DX8 version of scale?
$frame <int>
- The frame displayed for a multi-frame texture. This is normally set by the AnimatedTexture or TextureToggle proxies, but can be set manually. The value must be a valid index, or crashes might occur.
$basetexture2
Some shaders (most notably WorldVertexTransition) allow the use of two albedos. The second texture is handled by a mirrored set of commands with '2' in their name:
$basetexture2
$basetexturetransform2
- Todo:
$basetextureoffset2 <normal>
? - Todo:
$basetexturescale2 <normal>
?
There are further '2' commands applying to various shader effects, which are each documented in their respective articles.
See Also
- $envmapmask (specular mask)
- $envmap (environment map)
- $phong (diffuse reflection)
- $selfillum