$detail: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
(Added CS:GO WorldVertexTransition detail paramaters)
Line 56: Line 56:
;*12+
;*12+
: Any other values will disable the detail effect.}}
: Any other values will disable the detail effect.}}
{{MatParam|$detailtint|RGB matrix|Modifies the colour of the detail texture.
{{MatParam|$detailtint|RGB matrix|Color tint of the detail texture.
:{{bug|Does not work with [[$blendtintbybasealpha]].}}
:{{bug|Does not work with [[$blendtintbybasealpha]].}}
::{{todo|Verify which games this is broken in (tested in L4D2, TF2 and Portal 2).}}}}
::{{todo|Verify which games this is broken in (tested in L4D2, TF2 and Portal 2).}}}}
{{MatParam|$detailframe|int|The frame to start animated detail 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?}}}}
{{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}}}}
 
===CS:GO WorldVertexTransition Parameters===
{{MatParam|$detail2|texture|Detail texture for {{ent|WorldVertexTransition}}'s second layer.
:{{note|{{ent|LightmappedGeneric}} technically has support for these parameters and other <code>WorldVertexTransition</code> parameters, but they may not work as expected.}}|only={{csgo}}|shaders=WorldVertexTransition}}
{{MatParam|$detailscale2|float|Detail scale for <code>$detail2</code>.|only={{csgo}}|shaders=WorldVertexTransition}}
{{MatParam|$detailblendfactor2|normal|Detail blend factor for <code>$detail2</code>.|only={{csgo}}|shaders=WorldVertexTransition}}
{{MatParam|$detailframe2|int|The frame to start an animated <code>$detail2</code> texture on.|only={{csgo}}|shaders=WorldVertexTransition}}
{{MatParam|$detailtint2|RGB matrix|Color tint for <code>$detail2</code>.|only={{csgo}}|shaders=WorldVertexTransition}}


== Valve's detail textures ==
== Valve's detail textures ==

Revision as of 16:35, 27 August 2020

Template:Otherlang2

A detail texture (noise_detail_01), and its effect when applied to a material (left).

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 Episode Two.

Icon-Bug.pngBug:Detail textures do not currently work in conjunction with $seamless_scale. Enabling them to work together would require a programmer to edit the used shader.  [todo tested in ?]

Syntax

$detail <texture>

You will probably want to use at least $detailscale (see below) as well.

Parameters and Effects

$detailtexturetransform

Icon-Bug.pngBug:Does not currently function at all in Counter-Strike: Global Offensive.  [todo tested in ?]

$detailscale $detailblendfactor $detailblendmode $detailtint $detailframe $detail_alpha_mask_base_texture

CS:GO 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 (1024x1024), 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 & 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