$bumpmap: Difference between revisions
Jump to navigation
Jump to search
Warning:$bumpmap will disable prop_static's per-vertex lighting. Not enough data is stored in the vertices for normal mapping, so the engine has no choice but to fall back.
Note:
Joheskiller (talk | contribs) mNo edit summary |
No edit summary |
||
Line 10: | Line 10: | ||
* The $bumpmap parameter is not compatible with decals textures.}} | * The $bumpmap parameter is not compatible with decals textures.}} | ||
== Basic syntax == | ==Basic syntax== | ||
<syntaxhighlight lang=php highlight=5> | <syntaxhighlight lang=php highlight=5> | ||
LightmappedGeneric | LightmappedGeneric | ||
Line 21: | Line 20: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Additional parameters == | ==Additional parameters== | ||
; <code>$bumptransform <matrix></code> | ; <code>$bumptransform <matrix></code> | ||
: Transforms the bump map texture. Requires DirectX 9 or above. | : Transforms the bump map texture. Requires DirectX 9 or above. | ||
Line 41: | Line 39: | ||
; <code>$bumpframe2 <integer></code> | ; <code>$bumpframe2 <integer></code> | ||
: Used by the [[WorldVertexTransition]] shader in blend materials that display two textures. DirectX 9 required. | : Used by the [[WorldVertexTransition]] shader in blend materials that display two textures. DirectX 9 required. | ||
; <code>$bumpmapalphaphongmask <bool></code> | ; <code>$bumpmapalphaphongmask <bool></code> | ||
: Uses the bump map's alpha as the phong mask for the base texture | : Uses the bump map's alpha as the phong mask for the base texture | ||
{{Todo|Where did '''$bumpmapalphaphongmask''' come from? Doesn't phong already use the alpha channel of the bumpmap if one exists?}} | |||
== Console commands == | ==Console commands== | ||
; <code>mat_fastnobump <[[bool]]></code> | ; <code>mat_fastnobump <[[bool]]></code> | ||
: Quickly enables/disabled normal mapping. | : Quickly enables/disabled normal mapping. | ||
Line 53: | Line 51: | ||
(Yes, these two commands have bump and normal the wrong way around!) | (Yes, these two commands have bump and normal the wrong way around!) | ||
== See also == | ==See also== | ||
* <code>[[$ssbump]]</code> | * <code>[[$ssbump]]</code> |
Revision as of 02:33, 3 July 2016

A material's albedo (left) compared to its bump map.
The $bumpmap VMT parameter specifies a texture that will provide three-dimensional lighting information for a material. The texture is a bump map, but the process it is used for is called normal mapping. The two terms are often used interchangeably, however.


Basic syntax
LightmappedGeneric
{
$basetexture brick/brickwall021a
$surfaceprop brick
$bumpmap brick/brickwall021a_normal
}
Additional parameters
$bumptransform <matrix>
- Transforms the bump map 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 ?]
$ssbump
- Flags the bump map texture as being self-shadowing. Click for more details.
$bumpscale <float>
- Scales the bump map by the given value in DirectX 8.
$bumpframe <integer>
- The frame to start an animated bump map on.
$nodiffusebumplighting <bool>
- Stops the bump map affecting the lighting of the material's albedo, which help combat overdraw. Does not affect the specular map.
$forcebump <bool>
- Forces DirectX 8 cards to render the bump map. They normally don't for performance reasons.
$bumpoffset <?>
Confirm:DX8 version of center?
$bumpmap2 <texture>
$bumpframe2 <integer>
- Used by the WorldVertexTransition shader in blend materials that display two textures. DirectX 9 required.
$bumpmapalphaphongmask <bool>
- Uses the bump map's alpha as the phong mask for the base texture
Todo: Where did $bumpmapalphaphongmask come from? Doesn't phong already use the alpha channel of the bumpmap if one exists?
Console commands
mat_fastnobump <bool>
- Quickly enables/disabled normal mapping.
mat_normalmaps <bool>
- Displays the bump map texture of all materials that have one in place of their albedo.
(Yes, these two commands have bump and normal the wrong way around!)