Character (shader): Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Just the tip)
No edit summary
Line 43: Line 43:
{{MatParam|$fakerimtint|RGB matrix|Color of the ''fake'' rimlight.}}
{{MatParam|$fakerimtint|RGB matrix|Color of the ''fake'' rimlight.}}
{{MatParam|$rimhaloboost|float|Scale of the rim light halo.}}
{{MatParam|$rimhaloboost|float|Scale of the rim light halo.}}
{{MatParam|$rimhalobounds|vector4|Default value <code>[0.4 0.5 0.5 0.6]</code>, Controls the blending between light levels.}}
{{MatParam|$rimhalobounds|vector4|Default value <code>[0.4 0.5 0.5 0.6]</code> controls the blending between light levels.}}
===Ambient Reflection Parameters===
===Ambient Reflection Parameters===
{{MatParam|$ambientreflectionboost|float|Controls the strength of '''rimlight''' like highlights on the edges of the model.}}
{{Note| Ambient Reflection is a different version of rim lighting, one that uses [[Ambient light]] information.}}
{{MatParam|$ambientreflectionbouncecolor|RGB matrix|Color tint of the ambient reflections on the model.
{{MatParam|$ambientreflectionboost|float|Controls the strength of ambient light on the model.}}
{{MatParam|$ambientreflectionbouncecolor|RGB matrix|Color tint of the ambient reflections on the model.}}
{{MatParam|$ambientreflectionbouncecenter|vector3|{{todo}} Default value <code>[0 42 0]</code>}}
{{MatParam|$ambientreflectionbouncecenter|vector3|{{todo}} Default value <code>[0 42 0]</code>}}
===Shadow Parameters===
===Shadow Parameters===
Line 52: Line 53:
{{MatParam|$shadowsaturation|float|Controls the saturation of shadows.}}
{{MatParam|$shadowsaturation|float|Controls the saturation of shadows.}}
{{MatParam|$shadowsaturationbounds|vector4|Default value <code>[0.4 0.5 0.5 0.6]</code> controls shadow (color desaturation) blending between light to mid to dark levels.}}
{{MatParam|$shadowsaturationbounds|vector4|Default value <code>[0.4 0.5 0.5 0.6]</code> controls shadow (color desaturation) blending between light to mid to dark levels.}}
{{MatParam|$shadowtint|vector4|Tints the color of shadows on the model (when in dark area).}}
{{MatParam|$shadowtint|vector4|Tints the color of shadows on the model. Uses <code>[R G B A]</code>, alpha is shadow strength.}}
{{note|Uses <code>[R G B ShadowStrength]</code> if shadow strength is 0, then the model won't be tinted in darkness.}}}}
{{MatParam|$shadowcontrast|float|Controls the contrast of shadows.}}
{{MatParam|$shadowcontrast|float|Controls the contrast of shadows.}}
===Miscellaneous Parameters===
===Miscellaneous Parameters===

Revision as of 19:27, 15 August 2020

Stub

This article or section is a stub. You can help by expanding it.

Character on left, VertexLitGeneric on right.

Character is a material shader available in Counter-Strike: Global Offensive. Shares most generic parameters of VertexLitGeneric. Takes advantage of mask textures to tune stuff like rimlighting, phong shading and other.

Tip.pngTip:It might be a good idea to look at Valve vmts of new Player Models inside the vpk files, to get better understanding how to structure your Character shader vmt.


Supported Parameters

Textures & Masks

$basetexture
Diffuse mask.
$bumpmap
Normal map.
$envmap
Specular reflection mask.
$masks1
Red channel - $rimlight mask
Green channel - Phong Albedo mask
Blue channel - $metalness mask
Alpha channel - $warpindex mask
$masks2
Red channel - Shadow saturation mask
Green channel - Angle of Anisotropy
Blue channel - $envmap light scale
Alpha channel - Retroreflectivity
$phongwarptexture
Phong warp texture.
$fresnelrangestexture
[Todo]

Unique Envmap Parameters

Note.pngNote:In addition to all previous VertexLitGeneric parameters.

$envmaplightscale $envmaplightscaleminmax

Unique Phong Parameters

Note.pngNote:In addition to all previous VertexLitGeneric parameters.

$phongalbedoboost

Unique Rimlight Parameters

Note.pngNote:In addition to all previous VertexLitGeneric parameters.

$rimlightalbedo $rimlighttint $fakerimboost $fakerimtint $rimhaloboost $rimhalobounds

Ambient Reflection Parameters

Note.pngNote: Ambient Reflection is a different version of rim lighting, one that uses Ambient light information.

$ambientreflectionboost $ambientreflectionbouncecolor $ambientreflectionbouncecenter

Shadow Parameters

$shadowrimboost $shadowsaturation $shadowsaturationbounds $shadowtint $shadowcontrast

Miscellaneous Parameters

$hueshiftamount $metalness $warpindex $anisotropyamount