Lumen GI and Reflections feedback thread

I took a similar look at the runtime cost. The conclusion is still the same: ray-tracing cost for direct lighting in Lumen is too high.

The cost, highlighted by Krzysztof, is due to the ray-gen dispatch across the entire surface cache atlas. This is currently done per-light, and the cost stacks up quickly. I’m actively working in this area so we can perform sparse updates and significantly lower the expected runtime.

To give a brief example of in-progress work, when looking at Sun Temple, the current cost per-light in Early-Access is about 0.4ms while some preliminary work moves it down to 0.05ms. This isn’t a final report, however, as we expect batched evaluation to push the overhead down to something like 0.05ms per 16 lights, instead.

Lumen’s use of ray-traced direct lighting is tied to the use of ray-traced shadows in the scene. You can decouple this by setting the following CVar:
r.Lumen.DirectLighting.HardwareRayTracing 0

However, you might opt to work without ray-traced shadows, since virtual shadow maps are the preferred method to use with Nanite assets.

Patrick

5 Likes