$bumpmap: Difference between revisions
Jump to navigation
Jump to search
m (→$bumptransform) |
TomEdwards (talk | contribs) (redone) |
||
Line 1: | Line 1: | ||
[[Image:Brickwall021a normalcompare.jpg|thumb|A material's [[albedo]] (left) compared to its normal map.]] | |||
The $bumpmap [[VMT]] parameter specifies | [[Image:Example of bump mapping.jpg|thumb|The above material in-game.]] | ||
The '''$bumpmap''' [[VMT]] parameter specifies a texture that will provide three-dimensional lighting information. The texture is known as a [[Normal Map]]. | |||
== Basic syntax == | == Basic syntax == | ||
$bumpmap <texture> | |||
[[LightmappedGeneric]] | |||
$ | { | ||
[[$basetexture]] brick/brickwall021a | |||
[[$surfaceprop]] brick | |||
'''$bumpmap brick/brickwall021a_normal''' | |||
} | |||
=== | == Additional parameters == | ||
; <code>$bumptransform <matrix></code> | |||
: Transforms the bumpmap texture. Requires DirectX 9 or above. | |||
{{VMT UVtransform}} | {{VMT UVtransform}} | ||
; <code>$bumpscale <[[float]]></code> | |||
: Scales the normal map by the given value in DirectX 8. | |||
; <code>$bumpframe <[[integer]]></code> | |||
: Frame number to use from an animated texture. | |||
;<code>$nodiffusebumplighting <[[bool]]></code> | |||
: See [[Controlling Geometry Visibility and Compile Times#Dealing with fillrate issues|Dealing with fillrate issues]]. Only relevant when using [[LightmappedGeneric]]. | |||
;<code>$forcebump <[[bool]]></code> | |||
: Forces DirectX 8 cards to render the bump map. They normally don't for performance reasons. | |||
; <code>$bumpoffset <?></code> | |||
: {{todo|dx8 version of center?}} | |||
; <code>$bumpmap2 <texture></code> | |||
; <code>$bumpframe2 <integer></code> | |||
: Used by the [[WorldVertexTransition]] shader in blend materials that display two textures. DirectX 9 required. | |||
== See also == | == See also == | ||
* [[ | * [[Normal Map]] | ||
* | ** [[Normal Map Creation]] | ||
* [[Normal Map Creation]] | ** [[Normal Map Creation in The GIMP]] | ||
* [[Normal Map Creation in The GIMP]] | |||
[[Category:List of Shader Parameters]] | [[Category:List of Shader Parameters]] | ||
[[Category:VMT Texture Reference]] | [[Category:VMT Texture Reference]] |
Revision as of 04:00, 10 July 2008

A material's albedo (left) compared to its normal map.
The $bumpmap VMT parameter specifies a texture that will provide three-dimensional lighting information. The texture is known as a Normal Map.
Basic syntax
$bumpmap <texture>
LightmappedGeneric { $basetexture brick/brickwall021a $surfaceprop brick $bumpmap brick/brickwall021a_normal }
Additional parameters
$bumptransform <matrix>
- Transforms the bumpmap texture. Requires DirectX 9 or above.
- 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 ?]
$bumpscale <float>
- Scales the normal map by the given value in DirectX 8.
$bumpframe <integer>
- Frame number to use from an animated texture.
$nodiffusebumplighting <bool>
- See Dealing with fillrate issues. Only relevant when using LightmappedGeneric.
$forcebump <bool>
- Forces DirectX 8 cards to render the bump map. They normally don't for performance reasons.
$bumpoffset <?>
- Todo: dx8 version of center?
$bumpmap2 <texture>
$bumpframe2 <integer>
- Used by the WorldVertexTransition shader in blend materials that display two textures. DirectX 9 required.