Unreal Engine 5: Lumen features
With the announcement of Unreal Engine 5 (UE5), comes a whole lot of new features, systems, and tools! One of the coolest additions to UE5 is its Lumen Global Illumination and Reflections system.
Lumen is UE5’s new fully dynamic global illuminations and reflections system that’s designed for next-gen consoles. Lumen is the default illumination and reflections system in UE5. It renders diffuse inter-reflection with infinite bounces and indirect specular reflections in large, detailed environments at scales ranging from millimeters to kilometers.
Large Worlds
Lumen Scene operates on the world near the cameras rather than the whole, enabling and allowing for large worlds and streaming. Lumen relies on Nanite's Level of Detail (LOD) and Multi-View rasterization for fast scene captures to maintain the Surface Cache, with all operations throttled to prevent hitches from occurring. Lumen does not require Nanite to operate, but Lumen's scene capturing becomes very slow in scenes with lots of high poly meshes that have not enabled Nanite. This can be especially true in scenes if the assets do not have good LODs set up.
Lumen Surface Cache covers 200 meters from the camera position. Past this, only screen traces are active for global illumination.
Lumen has an experimental Distant Scene representation to provide traces past the Surface Cache. This was used in the Unreal Engine 5 technical demo "Lumen in the Land of Nanite" to achieve indirect lighting in the canyon. It covers the range of 200 meters to 1 kilometer from the camera. It works by rendering a low-resolution Reflective Shadowmap from the sun using Nanite, and traces against this heightfield during the Final Gather to pick up one bounce of the sun's indirect lighting. This Distant Scene representation is promising but requires significant development to be shippable in projects.
Lumen Lighting Features
Lumen brings robust dynamic global illumination to Unreal Engine for the first time and integrates well with other supporting systems in UE5, like Nanite which is UE5’s virtualized geometry system.
In Unreal Engine 4, features such as Screen Space Global Illumination were not that reliable and Ray Tracing Global Illumination (RTGI) was not performing well for games at a high enough quality, and didn't integrate with other important systems, which in turn, limited the illumination systems. Using Lumen, it allows developers to integrate it with other systems easily, allowing for easier development across the board with better performance all-round.
Lumen Global Illumination
Lumen solves an issue that older systems had, which is dynamic diffuse indirect lighting. To put that into perspective, when light bounces off of a surface, picks up the color of that surface and reflects the colored light onto other nearby surfaces and objects. This is called color bleeding. Meshes in the scene also block indirect lighting which produces indirect shadowing.
Lumen provides infinite diffuse bounces, which are important in scenes with bright diffuse materials such as white paint on the wall, or reflective surfaces.
UE5’s Nanite system allows geometry to be much more detailed than ever before. Lumen achieves full-resolution normal detail, while also computing indirect lighting at a much lower resolution for real-time performance.
Lumen with Sky Lighting
Sky lighting is solved as part of Lumen's Final Gather. This includes sky shadowing which allows indoor spaces to be much darker than outdoor while maintaining realistic lighting throughout the scene. Lumen also provides lower-quality global illumination for Lit Translucency and Volumetric Fog. This system allows for dramatic changes of light, whether it be an indoor scene, an outdoor scene, or a mixture of both.
Lumen and Emissive Materials
Emissive materials promote light through Lumen's Final Gather with no additional performance cost. However, there's a limit to how small and bright emissive areas can be before they begin to cause noise artifacts. This is inherently much more difficult to solve than manually placed light sources.
Lumen Reflections
Lumen solves indirect specular, or reflections, for the full range of material roughness values. Diffuse global illumination and shadowed skylight can be seen in all reflections. Lumen reflections also support Clear Coat materials. As you can see in the rendered car image below.
Supported Light Types and Other Features
At a high level, Lumen supports the following in Unreal Engine 5 Early Access:
- All light types are supported. This includes Directional, Sky, Point, Spot, and Rect Lights.
- Light Functions are supported on Directional Light only.
- Lights with their Mobility set to Static are not supported because Static lights are stored completely in lightmaps and their contribution is disabled by Lumen.
Want to prepare for the best experience with UE5 supported games? We recommend getting a gaming machine with an RTX 30 series card or AMD Ryzen card. Check out our gaming desktops and laptops by clicking here!