$detail: Difference between revisions
Kestrelguy (talk | contribs) m (updated language bar. also some formatting.) |
ReverendV92 (talk | contribs) m (→Parameters and Effects: Added CS:GO to the list of games in which `$detailtint` is broken.) |
||
Line 51: | Line 51: | ||
:Any other values will disable the detail effect.}} | :Any other values will disable the detail effect.}} | ||
{{MatParam|$detailtint|RGB matrix|Color tint of the detail texture.{{bug|Does not work with {{ent|$blendtintbybasealpha}}.}} | {{MatParam|$detailtint|RGB matrix|Color tint of the detail texture.{{bug|Does not work with {{ent|$blendtintbybasealpha}}.}} | ||
::{{todo|Verify which games this is broken in (tested in L4D2, TF2 | ::{{todo|Verify which games this is broken in (tested in L4D2, TF2, Portal 2 and CS:GO).}}}} | ||
{{MatParam|$detailframe|int|The frame to start an animated <code>$detail</code> texture on.|dx9=1}} | {{MatParam|$detailframe|int|The frame to start an animated <code>$detail</code> texture on.|dx9=1}} | ||
{{MatParam|$detail_alpha_mask_base_texture|bool|{{ent|WorldVertexTransition}} only. When enabled, causes the level of detail alpha to determine "base texture blending."{{todo|''Which'' base texture? Is this actually fully implemented?}}|removed={{csgo}}}} | {{MatParam|$detail_alpha_mask_base_texture|bool|{{ent|WorldVertexTransition}} only. When enabled, causes the level of detail alpha to determine "base texture blending."{{todo|''Which'' base texture? Is this actually fully implemented?}}|removed={{csgo}}}} |
Revision as of 13:50, 15 September 2022
Template:Shaderparam It specifies a texture which Source will use to add high-resolution detail to a material when it is viewed up close, by darkening or lightening the albedo appropriately, depending on the $detailblendmode. You can also use a full color (as opposed to grayscale) image and blend it using $detailblendmode 2. It is very effective for increasing the apparent resolution of a texture, and was used extensively in Half-Life 2: Episode Two.



Syntax
$detail <texture>
You will probably want to use at least $detailscale
(see below) as well.
Parameters and Effects


$detailscale
$detailblendfactor
$detailblendmode
$detailtint
$detailframe
$detail_alpha_mask_base_texture
WorldVertexTransition Parameters
$detail2
$detailscale2
$detailblendfactor2
$detailframe2
$detailtint2
Valve's Detail Textures
Valve's stock detail textures (available in OB only) are best used with the following pre-configured values:
$detail detail\noise_detail_01 // e.g. for brickwork, concrete... $detailscale 7.74 $detailblendfactor 0.8 $detailblendmode 0
$detail detail\metal_detail_01 $detailscale 4.283 $detailblendfactor .65 $detailblendmode 0
$detail detail\rock_detail_01 $detailscale 11 $detailblendfactor 1 $detailblendmode 0
$detail detail\plaster_detail_01 $detailscale 6.783 $detailblendfactor .8 $detailblendmode 0
The below parameters come from models\props_forest\LadderWood.vmt. It is the only Valve Stock texture VMT file to use this particular detail texture. Because the detail texture (detail\wood_detail_01) is a high resolution (1024×1024), the $detailscale
is lower than the others, with the exception of rock_detail_01.
$detail detail\wood_detail_01 $detailscale 2.563 $detailblendfactor .8 $detailblendmode 0
Additionally, there are 2 other stock detail textures. detail\detailash001a
and detail\detaildirt001a
. These files were used in the "leaked" version of Half-Life 2 and in
Half-Life 2: Episode One using the following parameters.
Concrete/concretefloor009a
in Episode One materials:
$detail detail/detaildirt001a $detailscale 0.27
Metal/metalfloor005a
in Episode One materials:
$detail detail/detailash001a $detailscale 0.50
See Also
Hiding large-scale tiling with detail textures - How to make texture repeating less noticeable using $detail