Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)

Enlighten UE4 3.10 Documentation
Results will update as you type.
  • Welcome to Enlighten
  • How Enlighten works
  • Install and build
  • Beginner tutorials
  • From static to dynamic lighting
  • How actors interact with Enlighten
  • Lightmap lighting
  • Probe lighting
  • Local reflections
  • Change the lighting resolution
  • World properties
  • Level properties
  • Precompute your level
  • Enlighten light properties
  • Light reflected from the sky
  • Material properties
  • Light volumetric fog
  • Turn off Enlighten updates in game
  • Mesh destruction
  • LOD for lighting
  • Real-world sun/sky intensity
  • Collaborate on a level
  • Reserved texture samplers
  • Visualizations and statistics
  • Debug with Enlighten tools
  • Convert to vanilla UE4
  • Troubleshooting and support
  • Third-party licences
  • Release notes
    Calendars

You‘re viewing this with anonymous access, so some content might be blocked.
/
How Enlighten works

    This is the documentation for Enlighten.

    How Enlighten works

    May 18, 2020

    This page helps you understand the key concepts behind Enlighten. We recommend that you read this page before working with Enlighten.

    The Enlighten pipeline

    The Enlighten pipeline is integrated with UE4 to provide real time indirect lighting. The two key components of the Enlighten pipeline are the Enlighten precompute and the Enlighten runtime.

    The Enlighten precompute creates optimized runtime data about static actors (actors with a fixed shape and position).

    The Enlighten runtime takes the Enlighten runtime data as input, along with the direct lighting and material information provided by the engine. The Enlighten runtime solves radiosity and produces three types of output: lightmaps, probes and cubemaps. These outputs contain only diffuse indirect illumination, and consist of bounces from many light sources. The UE4 renderer samples these outputs to provide indirect lighting for each mesh.

    Geometry and material colorsDirect illumination onlyDirect and indirect illumination

    Radiosity

    Enlighten uses a version of the radiosity algorithm to compute indirect lighting. The Enlighten precompute divides surfaces of the scene into chunks called clusters, and computes visibility form factors between all pairs of clusters. The Enlighten runtime progressively solves the radiosity equation, with one bounce per iteration, for an unlimited number of iterations.

    Smaller cluster sizes provide greater accuracy in the indirect lighting, but increase the computation required in the precompute. For real-time rendering, relatively large clusters provide sufficient accuracy with minimal computation time.

    Surfaces divided into clusters
    Result of radiosity computation
    Indirect lighting output

    Asynchronous updates

    The Enlighten radiosity computation runs entirely asynchronously on the CPU alongside the main renderer, without blocking rendering. It's generally not necessary to update the indirect lighting at the full frame rate. Decoupling Enlighten updates from the rendering means you can tune performance by trading processing time for latency in the lighting. This is particularly useful when the renderer is already pushing the GPU to its limit to hit a fixed framerate target, such as 60FPS on consoles, or even 90FPS in VR/AR applications.

    Artist workflow

    Before running the Enlighten precompute, you can change the lightmap resolution, the light probe density, and the location of cubemaps used for reflections. After the precompute, you can iterate on the lighting setup with instant feedback on your changes. You can then tweak and experiment with the lighting until you get the result you want.

     

    , multiple selections available,
    {"serverDuration": 9, "requestCorrelationId": "5604804741ef420886a07d9ffbee8b60"}