$blendmodulatetexture: Difference between revisions
Jump to navigation
Jump to search

Tip:You should use
Tip:The best way to create a modulation texture is to import the two albedos to an image editor as layers and create an alpha channel there by hand.
($blendmodulatetextures do display in L4D2's version of Hammer.) |
Kestrelguy (talk | contribs) m (added language bar.) |
||
Line 1: | Line 1: | ||
[[File:Blendmodulate.jpg|thumb|250px|Without vs With. The technique was first used in | {{lang|$blendmodulatetexture}} | ||
[[File:Blendmodulate.jpg|thumb|250px|Without vs With. The technique was first used in {{dod|2}}'s snow maps, such as Kalt.]] | |||
[[File:Blendmoc.jpg|thumb|250px|The green channel of DOD's <code>ground\snowblendtexture</code>.]] | [[File:Blendmoc.jpg|thumb|250px|The green channel of DOD's <code>ground\snowblendtexture</code>.]] | ||
[[File:Blendmod_mockup.jpg|thumb|250px|A custom blend modulation mask (all channels) side-by-side its affected texture rendered in-game.]] | [[File:Blendmod_mockup.jpg|thumb|250px|A custom blend modulation mask (all channels) side-by-side its affected texture rendered in-game.]] | ||
Line 8: | Line 9: | ||
== Caveats == | == Caveats == | ||
* Incompatible with {{ent|$normalmapalphaenvmapmask}} (use {{ent|$envmapmask}} instead). {{todo|Only in later games?}} | |||
* Incompatible with | * In {{src06|4}}, {{src07|4}}, and {{tf2|4}}, incompatible with {{ent|$basetexturetransform}} and {{ent|$detail}}. | ||
* In {{ | * In {{src06|4}}, also incompatible with {{ent|$envmaptint}} and {{ent|$envmapmask}}. | ||
* In {{ | * In {{as|4}}, modulation textures are not aligned correctly. Use <code>$blendmasktransform "center .5 .5 scale 1 -1 rotate 90 translate 0 0"</code> to fix them up. | ||
* In {{ | |||
In some additional cases, textures will blend as if <code>$blendmodulatetexture</code> were not used: | In some additional cases, textures will blend as if <code>$blendmodulatetexture</code> were not used: | ||
* Does not display when viewed through water. {{todo|Only in earlier games?}} | * Does not display when viewed through water. {{todo|Only in earlier games?}} | ||
* Does not display when illuminated with player's flashlight in {{ | * Does not display when illuminated with player's flashlight in {{hl2|4}}. This is fixed in {{mapbase|4}}. | ||
* Does not display in the Hammer Editor in most games. Known exceptions include {{ | * Does not display in the Hammer Editor in most games. Known exceptions include {{csgo|4}}, {{portal2|4}}, {{gmod|4}}, {{l4d2|4}}, and {{mapbase|4}}. | ||
== Parameters == | == Parameters == | ||
{{MatParam|$blendmodulatetexture|texture|The modulation texture for the blending. See below for more details.}} | {{MatParam|$blendmodulatetexture|texture|The modulation texture for the blending. See below for more details.}} | ||
{{MatParam|$blendmasktransform|matrix|Transforms the modulation texture before use in the material. | {{MatParam|$blendmasktransform|matrix|Transforms the modulation texture before use in the material. | ||
Line 29: | Line 27: | ||
== Blend Modulation Textures == | == Blend Modulation Textures == | ||
{{tip|The best way to create a modulation texture is to import the two [[albedo]]s to an image editor as layers and create an alpha channel there by hand.}} | |||
Only two color channels are read from the texture: | |||
Only two | |||
; Green | ; Green | ||
Line 41: | Line 38: | ||
: The red channel of Valve's snow modulation texture is a constant 99, which produces a fairly sharp falloff. Using different values in different places has the potential to produce a more complex effect. | : The red channel of Valve's snow modulation texture is a constant 99, which produces a fairly sharp falloff. Using different values in different places has the potential to produce a more complex effect. | ||
There is not always a need for the texture to be high | There is not always a need for the texture to be high resolution—high-frequency blends can be produced from low-res textures. | ||
[[Category:List of Shader Parameters|B]] | [[Category:List of Shader Parameters|B]] |
Revision as of 15:08, 9 May 2022



Without vs With. The technique was first used in
Day of Defeat's snow maps, such as Kalt.

Template:Shaderparam It changes the transition between the textures from a smooth, linear gradient to one "stamped" with a pattern.

$blendmodulatetexture
wherever possible, as the improvement in visual quality is immense!Caveats
- Incompatible with $normalmapalphaenvmapmask (use $envmapmask instead). Todo: Only in later games?
- In
Source 2006,
Source 2007, and
Team Fortress 2, incompatible with $basetexturetransform and $detail.
- In
Source 2006, also incompatible with $envmaptint and $envmapmask.
- In
Alien Swarm, modulation textures are not aligned correctly. Use
$blendmasktransform "center .5 .5 scale 1 -1 rotate 90 translate 0 0"
to fix them up.
In some additional cases, textures will blend as if $blendmodulatetexture
were not used:
- Does not display when viewed through water. Todo: Only in earlier games?
- Does not display when illuminated with player's flashlight in
Half-Life 2. This is fixed in
Mapbase.
- Does not display in the Hammer Editor in most games. Known exceptions include
Counter-Strike: Global Offensive,
Portal 2,
Garry's Mod,
Left 4 Dead 2, and
Mapbase.
Parameters
$blendmodulatetexture
$blendmasktransform
Blend Modulation Textures

Only two color channels are read from the texture:
- Green
- Biases in favor of
$basetexture
; high-value areas will be the most resistant to modulation. 128 is normal. - The idea is to paint noise and patterns into this channel, so that the edge between the two textures becomes irregular. Valve's snow texture (see right) has lots of ragged edges in the green channel, and even some bootprints. There are also lines painted along the edges of the albedo's bricks that give them a tendency to have snow along their edges.
- Red
- Sharpens. 0 makes the transition binary, 255 effectively disables modulation.
- The red channel of Valve's snow modulation texture is a constant 99, which produces a fairly sharp falloff. Using different values in different places has the potential to produce a more complex effect.
There is not always a need for the texture to be high resolution—high-frequency blends can be produced from low-res textures.