FilipeTessaro - Lumicraft: Dynamic Global Illumination without Lumen (C++, All Lights Bounce)

Code modules

  • Lumicraft (Runtime, PostConfigInit): the GI render passes

  • LumicraftRuntime (Runtime): GI Light, Light Sensor, Paint Volume, Baked GI, presets, the subsystem and the Blueprint functions

  • LumicraftEditor (Editor): the Project Settings page and the project setup check

12 C++ classes and 15 shader classes. No Blueprints; the content is an example map, two presets, a translucency material function and an example glass material. Network replication: not applicable (rendering only).

Platforms. Windows, tested with DirectX 12, DirectX 11 and Vulkan. Linux builds but has not been run. Unreal Engine 5.6, 5.7 and 5.8.

Important notes

  • Deferred renderer only: with Forward Shading on, the engine never calls a GI plugin.

  • Needs Generate Mesh Distance Fields (on in new projects) and Global Illumination scalability Medium or higher. The setup check fixes the project settings with one click.

  • Emissive light counts once the camera has seen the surface, and fades out shortly after it stops seeing it.

  • No sharp reflections of its own (rough ones are optional): keep Screen Space Reflections and reflection captures.

Documentation: https://apps.tessaroapps.com/lumicraft/docs/

Free demo (Windows): https://github.com/filipetessaro/lumicraft-demo

Support: contato@tessaroapps.com