Skip to main content
Rendering artifactShadows

Shadow Terminator

Fix the mismatch between low-poly geometry and smooth shading normals before applying global shadow bias.

VSMshadow terminatormesh normalsgeometryray tracing

What you're seeing

A smooth-shaded curved mesh shows faceting or a detached-looking boundary where light transitions into shadow.

Likely causes

  • Low-poly geometric faces enter shadow while their interpolated shading normals still face the light.
  • Virtual Shadow Maps expose the mismatch with high-detail visibility.

Check in this order

  1. 01Confirm that the artifact follows a low-poly curved surface near the shadow terminator.
  2. 02Increase polygon density or provide a higher-detail near-camera LOD.
  3. 03Use Nanite when it suits the asset and platform.
  4. 04Test Virtual Shadow Map Normal Bias only when geometry cannot be corrected, then check fine shadow detail across the scene.

Views and commands

Default VSM normal bias

r.Shadow.Virtual.NormalBias 0.5

Restores the documented default before comparing content changes.

Bias A/B test

r.Shadow.Virtual.NormalBias 1.0

Tests a higher bias shown in Epic documentation. It can remove fine shadow detail.

Epic documentation

Related guides

Unreal Directive is free and ad-free.

If it saved you time, you can help keep it that way.

Donate