This is the documentation for Enlighten.

Rebuild Enlighten from source

The Enlighten libraries and tools are provided in prebuilt form. You don't need to rebuild from source unless you modify the core Enlighten SDK code.

After you modify Engine source code you can build the editor or game using UnrealBuildTool as usual.
When upgrading to an unsupported platform SDK, you may also need to rebuild the Enlighten libraries against the new SDK. 
In rare cases you might need to make changes to the Enlighten libraries.
You can find the Enlighten library source code within the Unreal Engine third party source folder:

Engine/Source/ThirdParty/Enlighten


Modify and rebuild Enlighten libraries

To build and install the Enlighten libraries and tools required by Unreal Engine:

  1. In a Windows command prompt window, execute:

    GenerateProjectFiles.bat
    cd Engine\Source\ThirdParty\Enlighten
    BuildAndInstallEnlighten.bat 

    This scripts returns an exit code of zero if the build succeeded. Otherwise, an error is printed in the console output. 

    When you run GenerateProjectFiles.bat, Engine\Source\ThirdParty\Enlighten\EnlightenBuildConfig.xml is generated for the installed platform SDK versions detected by UnrealBuildTool.

    If you build Enlighten UE5 with Visual Studio 2022 Enlighten libraries are compiled with the MSVC v14.30 toolset. Install the Visual Studio component which includes the MSVC 14.30 compiler.

    To build Enlighten, you must install the June 2010 DirectX SDK

  2. If iOS libraries are required, in a MacOS Terminal window, execute:

    GenerateProjectFiles.sh
    cd Engine/Source/ThirdParty/Enlighten
    chmod +x BuildAndInstallEnlighten.sh
    sh BuildAndInstallEnlighten.sh

    Requires XCode 12.5.1 or later

  3. Build the Unreal Engine editor or game using UnrealBuildTool.

By default, UnrealBuildTool doesn't detect changes to third party headers during an incremental build. To work around this, delete the Engine/Intermediate/Build folder to force a full Unreal Engine build.

If you make regular changes to Enlighten headers, to enable incremental builds, enable bCheckExternalHeadersForModification in your BuildConfiguration.xml.