Lumen GI and Reflections feedback thread

I am also experiencing this same issue. The overall brightness of my scene “pulses” as I move the character around the scene. I tried turning auto exposure off and on with no luck. It appears to be linked to the Skylight. If I kill the skylight it goes away. I’ve tried tuning the settings of the skylight but can never get the pulsing effect to go away completely. Please fix epic! :slight_smile:

I did some quick tests with an empty scene and some interior assets. The pulsating effect seems to be related to Directional Lights, Spot Lights and Sky Lights. Rect Light and Point light don’t seem to produce this bug, the lighting, GI / reflections and shadowing are stable and relatively clean.

I disabled all lights in the scene and then brought in a rect light and I still got the pulsing effect, same with the spot light. It didn’t fix the issue for me. It’s strange, every I launch to play the game the scene is always very dark and then slowly (like 3-5 seconds) starts to light up. Then If I look at the ground everything get’s dark again until the camera is adjusted. Very odd. Is there an official way to report early access bugs for the devs?

I found a fix and it is indeed auto exposure! Enable auto exposure in your project settings, drop a post process volume in your level and check UNBOUND. Under the Exposure settings in your post process volume settings, set Min Brightness to 1 and Max Brightness to 1. I also have check boxed Metering Mode and selected Auto Exposure Histogram in the drop down, Check Exposure compensation and set to taste. I set mine to 2. This setting depends on your overall light intensities and how much you are cranking up Indirect Lighting Intensity from each light. Lastly check box Apply Physical Camera Exposure. Works great now. No more unstable GI and Pulsing effect. So stoked! Love Lumen!

5 Likes

Hey guys, been testing UE5 for sometime, trying to get the Lumen to work perfectly in simpler scenes before doing any crazy world building.

The GI aspect is definitely much more usable than the reflections handling by Lumen. Are Lumen reflections supposed to be like this? I read the documentation, it says it is not meant for more chrome-y materials but I expected it to be slightly better than this, please do correct if I am missing out some setting somewhere.

In the video, I show my material settings, project settings and camera settings in case I am doing something wrong. I also switch to RT and SS in the reflections as you can see in the video. Anyone who has tested UE5, please do let me know if there is a way to make it better.
I read the reply in this thread by @ that the weird transition from nice reflection to absolutely low res pixelated glitchy reflection is because of it switching distance field tracing from “detail” to “global”. Is it really that, if so, as mentioned by him, it would help to have sliders to control this.
In my example you can see, RT really nails the reflections when bounce count is increased, if Lumen can reach something similar it would become even more awesome. I would even go as far as letting RT calculate my reflections as long as the GI is passed by Lumen. (you can see when I switch to RT, the reflections are nice but the scene is no longer being lit by the emissives and GI isn’t being reflected, if these are computed by Lumen and passed to RT for reflections somehow, that would be a great!)

We use UE for rendering film quality 3D so we don’t fall into the traditional audience, we would love if UE5 had options where it might be slow and laggy as long as it computes physically correct (relatively) lighting.

File info:
This is just a blank film template with starter content and raytracing enabled. Materials are from starter content. I made a new level and you will see my outliner in the video as well. Just using default cubes with emissive and metallic materials. Using a 2080ti for reference.

I don’t think that is what is happening but (I believe) you can increase the SDF (“detail”?) tracing distance using the cvar: r.Lumen.DiffuseIndirect.MaxMeshSDFTraceDistance

What I think is actually happening is that the accurate reflections are coming from screen traces and if the trace misses then it falls back to tracing the surface cache, which is low quality. Could be totally wrong though, I don’t know anything.

In the livestream Daniel Wright mentioned you can improve the reflection quality by putting the magic number 4.0 into the Lumen Reflections quality in your post process.

I’ve noticed however, that it only seems to improve reflections in areas that are directly lit.

Top: Single spotlight
Bottom: Addition of a large rect light that fills the room with light

Still some issues though, such as the bright glowing lines on the edges of meshes. Not entirely sure what is going on there …and it still won’t match SSR, so if you want a seamless result you’ll want to disable the screen traces using the following cvar: r.Lumen.Reflections.ScreenTraces 0

Whatever graphical sorcery is being used to get a clean result from the surface cache doesn’t seem to be done for reflections at the moment.

2 Likes

For @indystry try going into the post process volume and cranking the reflection quality up to “4”. It’s an early feature still but gives much better reflections that play nicer with really smooth and shiny materials like you’ve got there. Make sure detail tracing setting is cranked up as well, and if you’re doing films then crank up the “final gather” option for Lumen in the post processing as well.

Beyond that, you can enable RT hardware support to get even better reflection results.

1 Like

I would be extremely useful to have access to the surface cache from the material editor (nearest normal/albedo).
Would open up a way to do some great looking blending of assets for instance.

1 Like

On the subject of the material editor, I’ve noticed that material response for Lumen is very different than lightmass, especially reflections.

The same material produces very different levels of perceivable roughness depending on whether you use static lightmaps or lumen.

I’m assuming this isn’t a bug, and with that in mind it would be really useful to have a material switch node that did different things depending on which gi/reflection method was active in order to better maintain material response consistency between the different methods.

An example of where this would be really valuable is for marketplace content that needs to be usable and reasonably consistent for all types of lighting.

1 Like

I’m hoping to see some level of Lumen support for current/last gen platforms, which are still relevant with the GPU shortage, the widespread use of integrated graphics, VR, and mobile. Cryengine even apparently has some level of dynamic GI on mobile - better to have a lower quality and leaky but optimized solution that can compete with other engines’ current gen SVOGI and SDFGI systems, than to have basically nothing at all. (LPV/SSGI are irrelevant compared to SVOGI/SDFGI.)

i read it was stored in ev100 in auto exposure. i set the max and min values to match what i wanted. this is always on even if you disable exposure settings. so enable exposure pick one you like and force lock it in ev100 settings. click the drop down arrow for advanced settings on exposure. THIS IS DONE IN POST PROCESS AND CAMERA :slight_smile:

This issue is not caused by auto exposure, nor would it make sense here. Auto exposure doesn’t change the hue of the light in the scene to completely change.

No last gen Lumen, and no mixing Lumen and lightmaps, neither works.

sorry i had mistaken this for the flicker issue. i had this bug a few times with reflections in source built. it comes and goes

This is the answer. Also, if you’ve got a dark interior with lights and want to be able to see without waiting several seconds for the lighting to catch up at every turn, do this. This looks like the only way to turn off auto-exposure with lumen.

@ @Arkiras I tried your settings. Increasing Lumen Reflections quality to magic number 4 does help but it is still very low res. Also increased Final Gather quality of Lumen to 4 which does a minor change but nothing major.
@Daniel_Wright Would absolutely love to get your insight on using Lumen to the best level possible (best settings) with shiny reflective surfaces (especially for cinematics where fps doesn’t matter much, only best quality visuals matter). The results we are getting are not as good as the bathroom mirror example you showed on the Lumen Youtube stream. Thank you!!

[Early Access 2] I don’t know if it’s a bug or if it was designed this way but if so it’s not very practical for real-time testing. The bleeding of the color of an object does not change in real time after the modification of the material instance but you have to click on the object of the modified material to see the changed color also on the bleeding.

2 Likes

Yes, I’m finding this too. It also happens with emissives. So even when the emissive is adjusted in realtime to the point of no emission, Lumen still displays the illumination. It’s only when the object moves or you move far enough away and then return that an update occurs. Seems most runtime material updates are ignored by Lumen at the moment.

1 Like

It’s not a bug, but not as limiting a thing as you’re imagining; at least potentially. More explicitly, it’ll change eventually on its own, but right now, no you can’t have a material randomly changing color either in editor or runtime and see the GI change color at the same time.

Obviously there are use cases for this to happen, big animated light up signs, trippy color changing materials, whatever. If that’s your use case then bringing it up here as unsupported right now is useful. Or do you just want a more immediate editor response? I imagine that’d be much easier and faster to implement; though it wouldn’t change the runtime response.

Did someone found a fix for lumen reflections not working with Single Layer Water shading model?