HumanSkin Shader

HumanSkin Shader

Overview

The HumanSkin shader is a specialized shader for rendering skin surfaces as skin shading cannot be accurately reproduced using regular lighting models.

HumanSkin Shader Params

Shader Params Description Shader gen option
Displacement bias See Tessellation and Displacement for more information. Displacement Mapping
Displacement height scale See Tessellation and Displacement for more information. Displacement Mapping
Fresnel Bias See Illum Shader for more information. All
Fresnel power See Illum Shader for more information. All
Fresnel Scale See Illum Shader for more information. All
Indirect bounce color See Illum Shader for more information. All
Inner layer anim frequency Sets how fast the inner layer animates. (is relative to the depth) Multilayer
Inner layer anim phase Set animation phase. Multilayer
Inner layer depth Sets how deep or close to the surface the inner layer is. Multilayer
Inner layer diffuse Sets the diffuse color of the inner layer. Multilayer
Melanin Sets level of melanin. Default
Oil spec glossiness Glossiness of secondary "oily" specular highlight. Default
Oil spec multiplier Multiplies the intensity of the secondary "oily" specular highlight. Default
Outer layer opacity Sets how opaque the main diffuse (surface) is shown over the inner layer. Multilayer
Rim multiplier Multiplies the intensity of rim light on the surface. Default
Scattering radius Radius in which light travels through the surface of skin before exiting. Default
Tessellation face cull See Tessellation and Displacement for more information. Displacement Mapping
Tessellation factor See Tessellation and Displacement for more information. Displacement Mapping
Tessellation factor max See Tessellation and Displacement for more information. Displacement Mapping
Tessellation factor min See Tessellation and Displacement for more information. Displacement Mapping

Basic information and limitations

  • The new shader uses screen-space SSS by default. The old wrap method has been deprecated (doesn't work with deferred lighting).
    • Multilayer option has been modified to accommodate this change.
  • Self shadowing has been removed due to artist feedback.
  • Due to current hardware limitations, the subsurface scattering has a limited number of samples and thus will create artifacts with high scattering values.
    • There is unfortunately no way around this issue aside from tweaking light conditions to hide the artifacts, or avoid using high scattering values.
    • The best practice is to hover around the default value and ensure that your character never gets too close to the screen.
  • There is no translucency in thin areas such as the nose or ears because of deferred lighting limitations.

Using the HumanSkin shader

Subsurface Scattering

Skin's main look is the result of subsurface scattering (light bouncing inside the surface, exiting in a different location than where it entered). Without subsurface scattering skin appears hard like concrete. It's the most important visual cue for the look of skin, therefore great care has been taken into faithfully simulating the effect. See Subsurface Scattering for more detail.

  • Scattering radius: defines the radius of scattering light inside the surface. The lower the value, the less scattering occurs and the more "concrete" the surface looks. Higher values provide a larger sense of translucency but too high can make the surface look like Wax or cause artifacts (this is because of a limited number of samples due to hardware constraints).
No scattering, looks like concrete (radius 0) (Default) Mild scattering, very fleshy (radius 2) High scattering, kills look (radius 8)

Rim Lighting

Rim Lighting simulates light reflection at sharp angles, meaning that it enhances visualization of silhouette shapes, separating surface (making it more visible) from the background. See Rim Lighting for more detail.

  • Rim Multiplier: Sets rim lighting intensity/multiplier. Note that rim lighting on brighter skins tones should be very subtle and more visible on darker tones.
No rim, flat Subtle rim, interesting look Strong rim, kills look

Oil specular

Oil specular simulates the specularity caused by a thin layer of oil over the skin.

  • Oil spec glossiness: Glossiness/sharpness of the oil specular highlight. Higher values give a more wet look but too high can break the effect.
No oil gloss, looks ok Mild oil gloss, gives more interesting look (particularly in ambient lighting) Strong oil gloss, too sharp, kills look
  • Oil spec multiplier: Controls the intensity of the oil specular highlight.
No oil spec, a bit dull Mild oil spec, gives nice look Strong oil spec, too strong, kills look

Glossiness

Glossiness is controllable via a gloss map stored in the specular map alpha channel. It is highly recommended that all major characters have a gloss map (at least for their face) as it gives variation to the specularity of the skin.

No glossiness, too diffuse Gloss map with glossiness 200 (for females, lips could be nice and glossy) No gloss map with glossiness 200, way too strong, kills look

Decal overlay

Textures placed in the Decal texture slot will be overlayed over the diffuse texture. For example, this can be used for war camouflage for soldiers, dirt, fake shadows or ambient occlusion.

Dirt added using decal texture

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

<< Back To CryDev