SurfaceGGX: Difference between revisions
Jump to navigation
Jump to search
Bug:This shader won't receive light properly from env_projectedtextures like the player's flashlight, instead making the material appear pure black. If the player is allowed to use a flashlight, the best case scenario is to only use this shader on props in lit up areas. This shader applied to weapon view models is safe from this however. [todo tested in ?]
Note:
Thunder4ik (talk | contribs) m (→See also: Unicodifying, replaced: See Also → See also) |
m (Setting bug notice hidetested=1 param on page where the bug might not need tested in param specified) |
||
Line 5: | Line 5: | ||
== Supported Parameters == | == Supported Parameters == | ||
;{{MatParam|[[$basetexture]]||Diffuse texture.}} | ;{{MatParam|[[$basetexture]]||Diffuse texture.}} | ||
;{{MatParam|[[$bumpmap]]||Normal mapping. {{bug|Animated bump maps aren't possible as the shader lacks the <code>$bumpframe</code> parameter.}} }} | ;{{MatParam|[[$bumpmap]]||Normal mapping. {{bug|hidetested=1|Animated bump maps aren't possible as the shader lacks the <code>$bumpframe</code> parameter.}} }} | ||
;{{MatParam|[[$color#Models|$color2]]||Color tinting.}} | ;{{MatParam|[[$color#Models|$color2]]||Color tinting.}} | ||
;{{MatParam|[[$detail]]||Detail texturing.}} | ;{{MatParam|[[$detail]]||Detail texturing.}} |
Revision as of 07:18, 20 May 2025
SurfaceGGX
is a material shader available in the following Source engine games:
Day of Infamy ,
Insurgency . It was first introduced in Day of Infamy and back ported to Insurgency. It supports PBR.

Supported Parameters
[[$basetexture|$basetexture]]
[[$bumpmap|$bumpmap]]
[[$color2|$color2]]
[[$detail|$detail]]
[[$envmap|$envmap]]
[[$alphatest|$alphatest]]
Metalness Parameters
Specular/Gloss Parameters
Misc. Parameters
Configuring the masks
$phongexponenttexture
The RGB channels of $phongexponenttexture
is configured as follows:
Channel | Data |
---|---|
Red | Glossiness (roughness inverted) |
Green | Metalness inverted |
Blue | Sub-surface scattering mask |
$metal
must be set to 1
in order to use the green channel.

$fuzz
and $detailnormal
use the inverse of the blue channel.$masks
The RGB and alpha channels of $masks
is configured as follows:
Channel | Data |
---|---|
RGB | Specular tint |
Alpha | Glossiness |
$pbr
must be enabled to make use of $masks
.
See also
- WorldGGX, similar shader used for brushes and displacements.