Skip to main content
Rendering artifactShadows

Virtual Shadow Map Projective Aliasing

Identify shallow light angles and oversized local lights that exhaust projected shadow resolution.

VSMprojective aliasingshadow resolutionlightsclipmaps

What you're seeing

Shadows become box-like or show bias errors where the receiving surface is nearly parallel to the light direction.

Likely causes

  • A shallow light angle stretches a shadow across too much projected space.
  • A very large local light exhausts its available virtual resolution.
  • A narrow camera field of view exhausts directional clipmap resolution.

Check in this order

  1. 01Move the light angle in a controlled test and confirm that the artifact tracks projective stretching.
  2. 02Use a Directional Light instead of a very large local light when the lighting design allows it.
  3. 03Reduce unnecessary local-light coverage.
  4. 04Apply a one-step resolution LOD bias only as a measured quality and performance test.

Views and commands

Directional resolution test

r.Shadow.Virtual.ResolutionLodBiasDirectional -1

Doubles directional-shadow resolution relative to a bias of 0, with added cost.

Local resolution test

r.Shadow.Virtual.ResolutionLodBiasLocal -1

Doubles local-light shadow resolution relative to a bias of 0, with added cost.

VSM clipmaps

View Mode > Virtual Shadow Maps > Clipmap/Mip Level

Shows which directional clipmap or local-light mip supplies each region.

Epic documentation

Related guides

Unreal Directive is free and ad-free.

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

Donate