Lumen GI and Reflections feedback thread

Hey, very noob here so apologies for my un-technical language.

Do you get any “ghosting” or jagged reflections when moving around your scene? I’m recreating an infinity mirror room and I can’t get my head around that.
Reflections are fine when the camera is still or rotating, but completely loose quality when moving around, is it due limitations or is there a magic cvar? ^^

1 Like

Yep, that’s pretty common behavior with lumen. Because lumen reflections use very low sample counts (1spp or less usually), there’s a good deal of spacial and temporal filtering needed to keep image quality up. Usually the denoiser can take these things into account,but there are cases where the history is rejected and you’ll get either ghosting, fizzling, or both.

I can’t think of any good CVars off the top of my head, but you could probably find something to manage the amount of history lumen accumulates? But you might need to increase the samples and tweak the other filtering a bit to compensate.

1 Like

I don’t like that this sounds like an unsolvable problem. Maybe Epic could find a way to make these look convincing but not precise. A biased solution of some kind.

In general we’re so close to having perfect real-time rendering if just those pesky translucency and mirror reflections could be solved… And I thought realtime GI would be the biggest issue.

I find this kinda hilarious. It’s been just about year and a half since Lumen was released to public, and made a breakthrough everyone thought was still at least half a decade away - a high quality, realtime global illumination solution for both diffuse and specular light transport.

Sure, it’s not movie quality, but the fact that it actually has glossy reflection, proper indirect light bounces contact shadows, and so on, is incredible for something that runs realtime. And by realtime I mean actually playable frame rates, not just “cinematic” frame rates.

So I find it funny that just a mere 1.5 years later, people have gotten so used to such incredible feat of technology they are dissatisfied it’s still not as good as full path tracer :slight_smile:

Just 2 years ago, we were still baking lightmass or using skylight DFAO at best, and now we nitpick about such things that reflections on translucent materials do not reflect other translucent materials. That we can’t see glasses reflected in our glasses in a GI solution which runs at 60+FPS. :smiley:

What puts it into a perespective is the realization there are still many people working with traditional DCC/renderer combos like 3ds Max and Vray waiting several hours to render a single path traced frame. And here we are complaining we are not getting the same quality at a rate of several dozens frames every second :slight_smile:

1 Like

I agree, but what about 2 (or even 3?) years old ray tracing? That was an accurate (and expensive, sure) solution, not so far to be almost perfect as a ‘bruteforce’ solution. For me, it was just missing GI in reflections, and more powerful GPUs, but they have been increasing the computation power since then, to be quite feasible nowadays.

Epic seems that just abandoned the bruteforce solution to concentrate in Lumen, with all its tradeoffs related. So… still no production-ready ‘ray traced’ (Ray tracing or Lumen) solution after it was released years ago.

They obviously didn’t search for production ready ray traced solution. They just searched for production ready solution for games, since they are after all still making primarily game engine. And they found it. The solution clearly doesn’t have to be fully path traced to be production ready.

My point was just that lumen is still young, and will improve. It’s not like Epic is not aware of these limitations, but it takes time to do research. There’s currently no realtime path tracing solution usable in games at playable framerates.

There are some limited tech demos, such as Portal RTX, Quake RTX, Minecraft RTX and so on, but what they all have in common is that they have topologically very simple environments. Lumen on the other hand can handle even dense forest of foliage, which is something that would completely kill path tracer’s performance.

Cyberpunk with RTX overdrive path tracing looks also promising, but it’s still a bleeding edge tech which has some tradeoffs.

All in all, you can’t expect miracles to happen overnight.

Cyberpunk RTX makes it clear to me why Lumen exists. Cyberpunk is RTX only, it doesn’t work on current gen consoles, and it has a much bigger performance impact than Lumen+Nanite (just going off Fortnite and the bigger content examples).

1 Like

Your words on research taking time are very very true. Having watched a lot of lumen development progress via Github, they were often acutely aware of given feature or performance limitations, but you only have so many staff you can develop with at any given time. They first prioritized diffuse, opaque GI, then figured out aspects of reflections, then high-quality translucency and foliage, and for 5.2 they worked on better character lighting and short-range shadows (among other things). There is a hierarchy in terms of what features are genuinely useful versus merely technically cool.

Lumen will keep evolving, and I cannot wait to see how it will progress. Intel just released a paper on what is more or less nanite for ray-tracing, and it could enable lumen to trace against the full-resolution micropolygon geometry of nanite meshes, but at a tiny fraction of the memory and compute demands of Epic’s current approach. It can only get better.

1 Like

That is the thing that I believe many people (especially those with very powerful rigs) forget. Lumen can scale from 60FPS on the 4TFP Xbox series S, to maxed-out HWRT multi-bounce GI and reflections on a 4090. A handful of technical compromises when you’re getting that much versatility in software is a miracle. And it is a little shocking how quickly some of the unreal audience went from being awed by the titanic technical evolution lumen represents, to frustrated when it doesn’t have feature parity with systems that use ~400x the processing power.

1 Like

r.Lumen.Reflections.Temporal 0
…but you will trade off ghosting for noise, unless you increase reflection samples. :slight_smile:

2 Likes

AMD just released a paper on ray tracing performance increase by 1.5x by using neural networks.
The problem with upscaling to reach 60fps is that it’s going to look like absolute trash to the majority of players.

Lets say you have a 3080, it targets 4k. With a massive open world using Nanite, Lumen, and TAA, runs 40fps at 4k. Okay? So you flip on DLSS quality to reach 60fps. It might look even better than native 4k with TAA.

You have a 3070 (And AMD equivalent?), it targets 1440p. With a massive open Nanite, High "60fps"Lumen, and TAA, runs 40fps at 1440p. Okay? So you flip on DLSS or FSR quality to reach 60fps. Now you are upsampling from a image less than 1080p It’s starting to look pretty ****ed up, especially in a photorealistic environment(Not something like FN) .

You have a 3060, (or an AMD or ARC equivalent), It targets 1080p. Which is the most lucrative/important consumer base
With a massive open using Nanite, High “60fps” Lumen, and TAA, runs 40fps at 1080…great :unamused: .
Our majority of players do not have upscaling as an option because you cannot upscale without looking like garbage when you are already down at 1080p .

1 Like

Hi, Epic Team!
I’ve noticed some kind of issue with emissive materials reflections. Looks flickering like in the following video:

That looks like pretty standard lumen reflections noise, to my eyes. There’s no real solution for it at the moment, unfortunately. You could make your emissive object bigger/dimmer, or make the surface a more perfect mirror, but you can’t really fix the lighting itself in the current version of UE.

1 Like

emissive object bigger/dimmer,-jblackwell

And then add a light to represent the luminosity of the object-William Faucher

1 Like

I needed to post this here to make sure the correct developers discovered this concept.

IDEA: Lumen Lighting Exploit Actor for UE5.3?

Let me know your thoughts on the idea. I think with the correct knowledge of Lumen’s source code I think it would be manageable? Maybe I’m being naive but innovations would never make it if no one takes the risk of sounding stupid lol.

I saw this new Reflections feature for 5.3 roadmap: Lumen Reflections support more than one bounce when Hardware Ray Tracing (HWRT) is enabled with Hit Lighting, and Max Reflection Bounces in the Post Process Volume is set to 2 or greater.

Does it mean we will have more static reflections and less screenspace (or disappearing) effects? How will it affect the screentracing? Can someone technical provide more info on this?

How do you mean ‘static reflections’?

In essence, multiple-bounce reflections for lumen mean that, instead of either terminating in hitting the surface cache, or hitting a surface and resolving hit lighting, lumen reflections are allowed to bounce multiple times around the area. It’s what would allow for a ‘hall of mirrors’ effect.

The answer to your question on whether or not it would resolve screen-space artifacts is somewhat complex. SSR has artifacts because it’s limited to what the depth buffer contains, and the depth buffer itself isn’t precise to the scene geometry. That said, SSR can do multiple bounces of reflection when the old lumen reflections could not, so now having multibounce reflections will mean less of a difference between screen traces and offscreen traces.

However, there are also things that only screen traces can resolve currently, such as pixel-accurate GI in reflections. The surface cache is just too limited in fidelity, and doing a diffuse version of the reflection hit lighting is basically just real-time path-tracing. So if you have any large differences in diffuse lighting, this won’t help. Furthermore, multiple bounces of reflection can cause noise to explode, because there’s so much more incoherence than even one bounce of reflection would offer.

That’s a lot of the technical works, but the bottom line: multiple bounces of reflections in lumen will make some scenes look much better, but it’ll also increase noise and it cannot fix everything.

I just tried out the new 5.3 preview instead of using my custom build, and I have to say that multiple-bounce lumen reflections can make a significant visual difference, but there are issues. The biggest one that the underlying noise problem with the lumen reflections resolve gets significantly worse, to the point where the extra detail that would be added by the multiple bounces of reflections gets more or less washed out in some scenes by the noise. If you have multiple near-perfectly specular surfaces, than it isn’t too much of an issue, but that’s a heck of a content limitation.

For the video game side of things, that’s not much of an issue. Lumen and nanite can barely run at 60 together with SWRT, so I’m guessing that no developer is likely to be fretting about the noise on their multiple bounces of hit lighting being noisy. But for anyone using MRQ, it means that you can’t just throw more processing power at lumen to get a correct resolve. You’d actually have to alter your art, which is a headache for a number of reasons. You could in theory use the path-tracer, but the ‘yellowing’ effect of lumen means that PT and lumen can give very different looking renders in certain scenes.

Lumen is an incredible piece of software, and I know that the devs are very busy with a large number of integrations and getting performance up to snuff (also probably getting ready for SIGGRAPH at the moment), but I really do think some sort of improved reflections system would be well-needed for lumen. I know that not even real-time path-tracers are handling rough reflections well atm, I know there’s ongoing research for using ReSTIR-style importance resampling, but I do think that some kind of reference mode for lumen reflections would be very well-served. Just some way to crank the quality up and get a stable resolve, cost irregardless.

its more efficient to use Lumen for GI, and RT for (high quality) Reflections, and existing Lumen and/or SSR for fallback. (The attempt to shove (high quality) reflections into lumen is kinda… backwards due to lumens limitations.)

I actually found it “annoying”, that Lumen didnt get much of an update with 5.3 aside from reflections - which already have a good way of making them work.

Thats not entirely correct though, even a 1070 can get 30 fps (natively!), last gens high end cards can reach 60 at 1080p, and a 4090 runs circles around everything anyway. (I think, I even have seen it run on a 1060 natively, with barely 30 fps - and those cards are like 10 years old or so.)

If you use RT reflections, it won’t reflect the Lumen GI, if i remember fine.
In addition, how do you use RT reflections + Lumen fallback reflections? I think it’s not possible to do it.

1 Like