$basetexture: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (links)
Line 19: Line 19:
; <code>$basetexturescale <normal></code>
; <code>$basetexturescale <normal></code>
: {{TODO|DX8 version of scale?}}
: {{TODO|DX8 version of scale?}}
{{todo|Explain what values rotate uses.}}


==  $basetexture2 ==
==  $basetexture2 ==

Revision as of 14:12, 1 August 2011

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. Requires DirectX 9.
The default position is center .5 .5 scale 1 1 rotate 0 translate 0 0.
  1. center defines the point of rotation. Only useful if rotate is being used.
  2. 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.
  3. rotate rotates the texture counter-clockwise in degrees. Accepts any number, including negatives.
  4. 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.pngNote:All values must be included!
Icon-Bug.pngBug: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 ?]
Icon-Bug.pngBug: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?
Todo: Explain what values rotate uses.

$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