$detail: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 1: Line 1:
[[Image:Detail.jpg|frame|right|A detail texture (noise_detail_01), and its effect when applied to a material.]]
[[Image:Detail.jpg|frame|right|A detail texture (noise_detail_01), and its effect when applied to a material (left).]]


'''$detail''' specifies a [[greyscale]] [[texture]] with which Source will add high-resolution detail when the material is viewed up close, by darkening the [[albedo]] appropriately. It is very effective for increasing the apparent resolution of a texture, and was used extensively in [[Episode Two]].
'''$detail''' specifies a [[greyscale]] [[texture]] with which Source will add high-resolution detail when the material is viewed up close, by darkening the [[albedo]] appropriately. It is very effective for increasing the apparent resolution of a texture, and was used extensively in [[Episode Two]].
Line 10: Line 10:


== Additional parameters ==
== Additional parameters ==
While the additional $detail params are not strictly required, it is difficult to get good results without them.


; <code>$detailscale <[[float]]></code>
; <code>$detailscale <[[float]]></code>
Line 48: Line 46:
  $detailblendmode 0
  $detailblendmode 0


There is also <code>detail\wood_detail_01</code>, but not stock material seems to use it.
There is also <code>detail\wood_detail_01</code>, but no stock material seems to use it.


[[Category:List of Shader Parameters|D]]
[[Category:List of Shader Parameters|D]]
[[Category:VMT Texture Reference]]
[[Category:VMT Texture Reference]]

Revision as of 04:12, 15 July 2008

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

$detail specifies a greyscale texture with which Source will add high-resolution detail when the material is viewed up close, by darkening the albedo appropriately. It is very effective for increasing the apparent resolution of a texture, and was used extensively in Episode Two.

Syntax

$detail <texture>

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

Additional parameters

$detailscale <float>
Fits the detail texture onto the material the given number of times. Generally around 7 or 8 for a 128px detail texture.
$detailblendfactor <normal>
Intensity of the detail's darkening of the albedo. Effectively an $alpha value.
$detailblendmode <int?>
Todo: What are the modes?
$detailframe <int>
The frame of an animated texture to use. Requires DX9.
$detail_alpha_mask_base_texture <bool?>
Todo: Something to do with masking $basetexture with $detail's alpha channel?
Requires DX9.

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

There is also detail\wood_detail_01, but no stock material seems to use it.