The 3D Handbook
Topic

Baked vs. dynamic lighting

The central lighting decision in any project; what baking stores, what mixed and stationary lights do, what fully dynamic systems such as Lumen cost, worked lightmap numbers, and how Call of Duty, Fortnite and Metro Exodus chose differently.

lightinglightmapslumenglobal-illuminationoptimisation

Baked lighting is calculated ahead of time and stored, usually in textures called lightmaps. Dynamic lighting is calculated while the game runs. Until recently, believable bounce light "had to be solved in an offline process called lightmap baking", which "can provide very high quality, but requires long build times, and greatly constrains the game environment" (Unreal Engine tech blog: Unreal Engine 5 goes all-in on dynamic global…).

Choosing where your project sits between the two is one of the first technical decisions on any game. It affects your lightmap UVs, your build times, your target platforms and even your game design: a world lit by baked light cannot have a day-night cycle or walls the player can knock down. For the basics of lights themselves, see real-time lighting; for bounce light specifically, see global illumination.

#What baking stores

A light bake simulates light in the editor and writes the result to disk.

  • Lightmaps hold the light that falls on static surfaces. Each surface needs a second, non-overlapping UV set for this; see lightmap UVs.
  • Light probes store light at points in space, so moving objects (characters, doors, pickups) can pick up the baked light as they pass. Godot's documentation notes that with LightmapGI, dynamic objects receive light via light probes (Godot Engine documentation: Introduction to global illumination).

Unity's baked settings show what you control (Unity Manual: Baked Lighting Settings):

Setting What it does Default in Unity 6
Lightmap Resolution "The number of texels per unit for lightmaps" Not stated
Lightmap Padding Space between UV charts in the atlas 2
Max Lightmap Size Largest atlas texture 1024
Max Bounces Light bounces simulated 2 (range 0–100)
Lightmapper Progressive GPU; "the Progressive CPU Lightmapper is deprecated" —
Ambient Occlusion Baked contact darkening "Enabled by default"

Baking costs time and flexibility. Moving a lamp after a bake "will leave lighting in an incorrect state" until you bake again (Unreal Engine tech blog: Unreal Engine 5 goes all-in on dynamic global…). Unity's manual says baked lights have "no runtime cost", but baking itself "can be a time-consuming process" (Unity Manual: Light Modes).

#Mixed and stationary lights

Most engines let one light be partly baked.

A horizontal scale from fully baked on the left to fully dynamic on the right, with three rows. Unreal: Static light, Stationary, Movable, Movable plus Lumen. Unity: Baked, Mixed, Realtime, Realtime plus Enlighten. Godot 4: LightmapGI, VoxelGI, SDFGI, SSIL.
Where the main options in each engine sit between baked and dynamic. Positions are approximate and depend on settings.Diagram by the handbook author

#Fully dynamic lighting

Fully dynamic systems compute both direct and bounce light every frame. Unreal's Lumen is "Unreal Engine's fully dynamic global illumination and reflections system" and the default in UE5 (Unreal Engine Documentation: Lumen Global Illumination and Reflections). Turning it on changes the whole lighting approach: "precomputed static lighting contributions are disabled and all lightmaps are hidden", and Static lights are not supported at all (Unreal Engine Documentation: Lumen Global Illumination and Reflections).

The costs are runtime and hardware:

Godot 4's real-time options (SDFGI, VoxelGI, SSIL) are not available in its Mobile or Compatibility renderers; "for mobile games, LightmapGI and ReflectionProbes are the only supported options" (Godot Engine documentation: Introduction to global illumination).

#Three games compared

#Decision guide

If your project has… Lean towards Why
A day-night cycle, destruction or player building Dynamic Baked light cannot follow changes (Unreal Engine tech blog)
Mobile or Switch-class targets without Lumen-class hardware Baked Godot mobile supports only lightmaps and probes (Godot Engine documentation); Lumen excludes last-generation consoles (Unreal Engine Documentation)
Standalone or PC VR Baked or simple dynamic Lumen does not support VR (Unreal Engine Documentation)
Procedurally generated levels Dynamic Godot notes baking only happens in the editor (Godot Engine documentation)
A 60 fps target and a tight GPU budget Baked, or dynamic with low settings Fortnite had 4 ms for GI and reflections (Unreal Engine tech blog)

#In different engines

Baked Partly baked Fully dynamic
Unreal Engine 5 Static lights in lightmaps (not used with Lumen) (Unreal Engine Documentation) Stationary lights (Unreal Engine Documentation) Movable lights with Lumen
Unity 6 Baked lights, Progressive GPU lightmapper (Unity Manual; Unity Manual) Mixed lights Realtime lights
Godot 4 LightmapGI (UV2 and baking) (Godot Engine documentation) Static bake mode for level lights, Dynamic for long-lived effects SDFGI, VoxelGI, SSIL, Forward+ only

#Common mistakes

#Further reading and watching

References

  1. Daniel Wright, Krzysztof Narkowicz · Unreal Engine 5 goes all-in on dynamic global illumination with Lumen · Unreal Engine tech blog, 2022 · article · accessed 2026-10-21
  2. Godot Engine contributors · Introduction to global illumination · Godot Engine documentation (source on GitHub), 2026 · docs · accessed 2026-10-21
  3. Unity Technologies · Baked Lighting Settings (Lighting Settings Asset reference) · Unity Manual, 2026 · docs · accessed 2026-10-21
  4. Unity Technologies · Light Modes (introduction) · Unity Manual, 2026 · docs · accessed 2026-10-21
  5. Epic Games · Stationary Light Mobility · Unreal Engine Documentation, 2026 · docs · accessed 2026-10-21
  6. Epic Games · Lumen Global Illumination and Reflections · Unreal Engine Documentation, 2026 · docs · accessed 2026-10-21
  7. Epic Games · Lumen Technical Details · Unreal Engine Documentation, 2026 · docs · accessed 2026-10-21
  8. Michal Iwanicki · Precomputed lighting in Call Of Duty: Infinite Warfare · Activision Research · talk · accessed 2026-10-21
  9. Ari Silvennoinen · Large-Scale Global Illumination in Call of Duty · Activision Research, 2021 · talk · accessed 2026-10-21
  10. Epic Games · Lumen brings real-time global illumination to Fortnite Battle Royale Chapter 4 · Unreal Engine tech blog, 2022 · article · accessed 2026-10-21
  11. NVIDIA · Metro Exodus PC Enhanced Edition Out Now With Improved Ray Tracing And DLSS 2.0 · NVIDIA GeForce News, 2021 · article · accessed 2026-10-21

Last updated 2026-10-22