Briefing

Colored Shadow Penumbra Implementation for UE5 5.7

ux
by ibobev ·

Patch your UE5 5.7 engine shaders by inserting the colored penumbra code at line 190 in SubstrateDeferredLighting.ush or line 397 in DeferredLightPixelShaders.usf to add saturation effect.

What to do now

Patch the UE5 5.7 engine shaders as described to enable colored penumbra in your project.

Summary

The article explains how to add a colored penumbra effect to dynamic lights in Unreal Engine 5.7 by editing engine shaders. It provides two code snippets: one for Substrate pipelines in Engine\Shaders\Private\Substrate\SubstrateDeferredLighting.ush at line 190, and another for non-Substrate pipelines in Engine\Shaders\Private\DeferredLightPixelShaders.usf at line 397. The implementation introduces a PenumbraSaturation constant (default 4.0) and LuminanceFactors (0.3, 0.59, 0.11) to desaturate and then re‑saturate the penumbra color, blending it with the surface color based on the shadow term. It works only with dynamic lights, requires wide penumbras to be visible, and does not affect baked lighting.

The author notes that the change is cheap, works with all light types, and can be toggled by adjusting PenumbraSaturation. The effect is visible in sample scenes from Quixel, and the article encourages readers to experiment with lower saturation values for subtlety. The implementation requires only shader recompilation (Ctrl+Shift+.) and does not modify the engine binary, keeping compatibility with the Launcher version.

Key changes

  • Adds colored penumbra effect to dynamic lights
  • Requires UE5 5.7 engine shader edit
  • Configurable PenumbraSaturation value
  • Uses LuminanceFactors for desaturation
  • Applies to Substrate and non-Substrate pipelines
  • Effect only visible with wide penumbras
  • Does not affect baked lights
  • No engine recompilation beyond shader recompilation

Affects

none

Customer impact

Analyzing matches…

Ask about this story

Impact on an agency? Which customers? Compare historically Risks of waiting