Skip to Content
DocumentationFeaturesTranslucency & SSS

Translucency & SSS

Translucency simulates light passing through thin geometry — the orange glow of a hand against the sun, the rim of a leaf, the wax around a candle flame. Genesis ships a fast wrap-lighting approximation with a thickness map, view distortion, and an art-directable color.

Video

A back-lit leaf with a directional light orbiting behind it, warm light transmitting through the thin areas and veins glowing as the light passes directly behind the surface.

features/translucency-sss/translucency-backlit-leaf.mp4

Light transmitting through a back-lit leaf as the light orbits behind it.

When to use it

  • Skin — ears, fingers, and nostrils under a strong back-light.
  • Foliage — leaves transmitting sunlight.
  • Wax, candles, and jade — a surface glow from internal scatter.
  • Magic FX — a sustained inner glow on cloaks, slimes, and ghosts.

How it works

The shader computes a wrap-lit term pow(saturate(dot(-L + N * _SSSDistortion, V)), _SSSPower), multiplies by _SSSColor and the sampled thickness, and adds the result to the lit output. Distortion controls how much the normal bends the light direction; higher values produce a more diffuse, wrap-around glow.

The leaf reads as a flat-lit, opaque card.

Veins glow where the thickness map is dark, and the back-lit silhouette transmits warm light.

Off
Translucency · thickness map

A leaf with and without translucency. Drag to compare.

Properties

Inspector labelShader propertyTypeDefaultDescription
Transmission Color_SSSColorColorRGB(0.85, 0.30, 0.20)Tint of the transmitted light.
Intensity_SSSIntensityFloat (0–8)1.0Overall strength of the SSS term.
Power_SSSPowerFloat (0.1–16)4.0Falloff exponent. Higher tightens the back-side glow.
Distortion_SSSDistortionFloat (0–1)0.3How much the normal bends the light direction.
Thickness Map_SSSThicknessMapTexture2DwhiteGreyscale thickness. White = thin (glows), black = thick (opaque).
Ambient SSS_SSSAmbientFloat (0–1)0.1Constant ambient SSS where the main light does not reach.

Usage

  1. Enable Translucency and assign a thickness map; bake one with the AO Baker or paint it manually.
  2. Pick a Transmission Color (warm flesh, green sap, amber wax).
  3. Tune Distortion until the wrap matches reference — 0.2–0.4 for skin, 0.5–0.7 for leaves.
  4. For magical surfaces, raise Ambient SSS so the glow persists without a back-light.
material.SetColor("_SSSColor", new Color(0.95f, 0.45f, 0.32f)); // skin material.SetFloat("_SSSDistortion", 0.25f); material.SetTexture("_SSSThicknessMap", skinThickness);

Tips & gotchas

  • Thickness is inverted relative to occlusion — bright means thin. Bake with that in mind, or invert the AO Baker output.
  • This is a wrap-lit approximation, not a real diffusion profile, so multi-bounce shadows will not be accurate.
  • Pairs with Normal Mapping: small-scale normal detail helps the SSS term break up evenly across the surface.
  • Cost is roughly three ALU per pixel, cheap enough to ship.
Last updated on