From Valve Developer Community
Revision as of 15:45, 27 August 2020 by Deprecated (talk | contribs) (Added update template and todo; needs more CS:GO documentation)
Jump to: navigation, search
Application without and with $blendmodulatetexture.

WorldVertexTransition is a material shader available in all Source games. It is used to blend the vertices of a displacement surface between two different materials. It handles two at once by using a mirrored set of parameters with "2" in their name.

The pattern of the blend is defined by Hammer's alpha painting tool. The blend is normally a linear gradient, but it can also be "stamped" by a texture specified with $blendmodulatetexture. This command makes the material look considerably better for very little cost - use it often!

Note.png Note: This shader now only works on displacements. If used on a regular brush, VBSP will generate and pack a LightmappedGeneric version of the material automatically, discarding the secondary texture.

To do: This shader was significantly upgraded in <Counter-Strike: Global Offensive> with new parameters, a new layer blending mode, drop shadows, and support for layer-specific detail textures and specular masks. Document these.


	$basetexture nature/dirtfloor006a
	$surfaceprop dirt

	$basetexture2 nature/rockfloor005a
	$surfaceprop2 rock

	%tooltexture nature/blendrockgrass004a_tooltexture
  • Some visual effects can be selectively applied to one sub-material or the other. See the relevant articles for more details.
  • The Hammer material browser won't be able to display a preview of the material unless it's given a %tooltexture.

Supported Parameters

$blendmodulatetexture (in all games since <Source><Source>)
Modulate the blending between materials using a special texture.
Detail texturing. Applies the same detail texture to both materials. In <Counter-Strike: Global Offensive>, each layer can use their own detail texture.
Specular reflections. In <Counter-Strike: Global Offensive>, each layer can have their own specular mask. To do: Might disable $blendmodulatetexture if both are used.
$lightwarptexture (in all games since <Source><Source>)
Per-texel color modification via a warp texture. Applies the lightwarp to both materials.
$seamless_scale (in all games since <Source><Source>)
Mitigation for displacement texture stretching.
Self-illumination. Applies the self-illumination to both materials. To do: Might disable $blendmodulatetexture if both are used.
$ssbump (in all games since <Source><Source>)
Self-shadowing bumpmapping. If two bumpmaps are used, both must be self-shadowing bumpmaps in order for this to work properly.
Expensive and cheap transparency. Applies the transparency to both materials.
$phong (only in <Counter-Strike: Global Offensive>)
Diffuse reflections.

See also