Lumen GI and Reflections feedback thread

Built ue5-main today and encountered an issue with Lumen and lights with distance field shadows enabled.

Lumen seems to completely ignore spotlights when they are set to cast distance field shadows. Point lights work correctly, but the light becomes noticeably dimmer with DFS enabled, and the shadows don’t appear to be rendered in the Lumen scene. (Maybe spotlights aren’t being ignored by lumen but are just really dim? I dunno)

EA2 from the launcher doesn’t have either of these issues.

Should we even bother mentioning issues found in ue5-main?

Can I ask what the limitations of using Lumen with Chaos Destruction are? I didn’t see anything about this in the documentation.

I ask because when I saw this effect with the light pouring into the room as the roof collapses, initially my assumption was that this was done with Chaos. However Chaos geometry collections do not appear to generate mesh distance fields, and have no representation in the Lumen scene. I can’t get them to occlude indirect light at all.

Thanks!

You mentioned setting a pointlight to movable. Does static/stationary/movable make any difference to the lumen system?

Found something else that needs improvement.

Description:

  • Sometimes, indirectly lit surfaces take a long time to generate Lumen Data.
  • As soon as these surfaces are “off screen” the data gets deleted, causing these surfaces to be “unlit” the next time they come into view.
  • It then takes a lot of time again to regenerate the data.

Starting situation:

After looking away shortly (see the white walls in the upper half of the image):

It really would be awesome if Lumen would not throw away its data like this, it should be saved until the player is far away, not just 20m.

I mean, Lumen is great, but needs to be “reliable” once its finished.

There also is this issue that I am completely unable to resolve:

Lumen enabled - everything fine (via post Process Volume):

Lumen disabled - completely broken graphics now (via post Process Volume):


EDIT: This goes away on higher exposure levels, it only appears at 1.0 for me.

This needs fixing, otherwise lumen is unusable in any game, since it cant be disabled.

Another one:
Instanced Static Meshes are not represented properly in the Lumen scene at all, so they are currently useless since they “eat” all your light.

2 Likes

I finally figured out what causes the issues in Lumen GI and Reflections feedback thread - #48 by Yaeko - after only 4 months of pain and suffering.

Short explanation:

  • If there are too many lights (Point, Spot, Rect etc.) in your world lumen will stop working.
  • It does not matter if they are in view or not, just existing (and being visible/enabled) is enough.

Long Explanation (including how I got to this conclusion and how I can reproduce it etc.):

I always had a lot of “decorative” lights in my games and this never was a performance issue since only a few of them were “in view”, the others got culled even though the UE4/5 “cull distance” for lights is set to 0 by default.

So I started from scratch with my game and did “the ususal thing” and the issue did not appear since i built smaller maps. This allowed me to figure out the exact moment when this issue starts to appear, which then allowed me to go through the objects/assets that I recently added to investigate.

To be more specific, I had a small section of a level that I added which made the issue appear.

The section (Lumen clearly broken):

The section itself is nothing special, a bunch of static meshes, ISMs and lights, but lumen broke.

While going through “the possible offenders” I noticed that removing some of the lights made the issue go away, or be less visible.

This here is the maximum amount of lights I can have before the issue appears (see the lights at the wall, on the floor.)

2 more lights and you can already see lumen start to “break” on the wall to the left (in comparison, there are dark spots caused by lumen)

I then went and tested “if it is this specific area”, but no it isnt. I removed lights somewhere else in the level and re-added the ones in our “testing area”.

Removed lights in another part of the world:

“Testing Area” now working fine with all the lights being there:

At this point it was clear that I found the underlying issue, could reproduce it, but still went on to verify further.

  • When loading a level “pushes” you over the “unknown limit” of lights that lumen can handle the issue also appears. (For example: player is walking into another level, so you make it visible.)

  • Disabling the lights fixes the issue when loading levels, further verifying what I figured out earlier.

  • Giving your lights a “cull distance” (default is 0) also fixed the issue for me, as long as there are not n+1 lights within the cull distance around you. (n+1 is the amount of lights lumen can handle +1)

Conclusion:

This is a rather annoying bug, since it can appear literally everywhere without any hint to what is causing it, which is why it took me 4 months to nail it down…

This issue becomes even more problematic because Lumen means that we need more lights in general, especially if your game is not a 1:1 scale, but 2:1 for gameplay reasons (like mine is, and many others).

This issue actually goes against everything that UE5 is supposed to enable, which is “larger worlds”, since having larger areas also means that you have more lights in general, which will break lumen at some point. (Remember: I reached the limit while actively trying to avoid it, building smaller areas than I ever would have in UE4 in the past.)

The “workaround” currently is:

  • Set your lights cull distances to something useful and reasonable, the engine sets them to 0 by default.
  • make sure your levels are spread out more, so that you dont end up reaching n+1 in within your culling distance.

Solution (starting point) for Epic:

Lumen should not use all the lights it can find for its GI, or it should be able to handle far more of them.

I am well aware that this is not a trivial issue, but this needs to be sorted out.

Answers to some questions that might have come up, regarding my lights:

Q: Why do you have so many lights instead of just scaling them up?

A: For performance reasons. The game has dynamic light sources (the lasers) which have relatively large attenuation radius (radius = laser length/2), so the lights need to have smaller ones to keep the performance in check - its simply a trade off.

2 Likes

We have a splitscreen problem in UE5. Find that cast shadows and splitscreen do this:


i removed the landscape Material so its better to understand the bug.

When u move, the shadwos fliker and replace itsself. When u wait the shadows fix it self in 20-30 seconds.

How to recreate bug:

  1. Create a UE5 Early Access 2 Project (Third Person Template)
  2. Create a GameMode.
  3. Add on BeginPlay → CreatePlayer(-1)

Update / fix: Its a Virtual Shadow Maps thing. How to Fix:

1 Like

Probably not what you want to hear, but I found another issue/bug with Lumen.

This time the issue is “moving parts”.

Explanation:

If you have a Moving platform that is not floating (for example a larger cube shaped object) the inside of the object is dark, which is technically correct but leads to an issue when being moved around.

The issue is visible on the side you are moving away from (if you are moving down, its on the top, if left, its right etc.)

What happens?

  • Lumens Surface GI starts to “flicker” as your moving object moves through the “voxels” that were previously below the surface.
  • This is mostly visible in shady areas that are not too bright, I did cover it somewhat up with lights on top of my moving platform, but thats just another workaround.
1 Like

The light limit thing could be partially overcome with cached shadowmaps. It’d be neat to see support for lights transitioning to cached, not just for normal performance sake, but so no visibility updates would be needed for the light’s contribution to GI. Unlimited sorta, whatever other limits there are next lights contributing to GI! Really great for any city scene.

Hi. I have a problem with Lumen reflections. For demonstration purpose I specifically turned off ScreenSpaceReflection r.Lumen.Reflections.ScreenTraces 0
I now have a fresh build of UE5.1.0 Build Date: Oct 16 2021 but have the same problems in UE5 Early Access 2
Video card rtx A4000 drivers are fresh, all windows updates are latest.
1.The “Lumen reflection qulity” change doesn’t work (PostProcessVolume is enabled as unbound). Changing the parameter from 1 to 4, does not give any change on the screen.Changing the “Lumen reflection qulity” parameter from 1 to 4 doesn’t work, doesn’t give any visible change.
I tried turning on and off “use hardware ray tracing when available”, changing the parameter from 1 to 4 also has no effect
(PostProcessVolume is enabled as unbound).
2. The reflections reflect the Lumen Scene layer. Is it supposed to be like this when “use hardware ray tracing when available” is enabled? Such reflections look bad. Is there any way to improve reflections via console commands?
3. When I move such reflections they take data from Surface Cash and it turns out that the reflections are blinking and changing, it looks bad. Can I improve what Surface Cash looks like in the reflections? Or improve its quality for reflections?

So far, only poor reflection quality is preventing me from completely switching to UE5 for interior rendering.
2021 10 17 17 50 30 - YouTube


Lumen is really great and looks awesome in my project but I was wandering if there are any plans to support DX12 linked multi-GPU with Lumen? Right now running my game on UE5EA and UE4 with “-game -d3d12 -MaxGPUCount=2 -AFR” on 2xRTX2080Ti NVLink crashes the engine after the game flickers for a few seconds.

The only implementation of raytraced mGPU I could find is on Vulkan (Rendering Perfect Reflections and Refractions in Path-Traced Games | NVIDIA Developer Blog) (GitHub - NVIDIA/Q2RTX: NVIDIA’s implementation of RTX ray-tracing in Quake II) but the advantage of this implementation is that it seems to not add any extra rendering latency compared to AFR.

Hope you can add this to the list of features for Lumen!

Hi, first things first, Lumen is AMAZING

ok… now to the nitpicking.

I have this scene and I wanted to try the Volumetric Clouds to have, something in the sky.
this is a full software Lumen scene, cause my GPU is not so good (aka: is bad)

Now, Invariably the presence of the clouds impacts in the lumen GI solution, maybe is the screen space part? or the software raytracing?

With Clouds

Whithout Clouds

My Question is: Let’s say that in this particular case I DON’T want to have the clouds adding to the GI, is there a way to do that?

Or in more general terms: is there a way to fully exclude something from Lumen? (I’m guessing this could be also useful for big emissive surfaces that are going to create splotches, for example)

It’s physically correct for clouds to add more GI/ambient lighting to an outdoor scene and lighten up the shadows.

Currently no way to exclude things from affecting the lumen lighting (even in level UI elements are going to affect the lighting).

Big emissive surfaces should create less splotches and have less issues than small emissives.

You can turn off Lumen’s contribution to the volumetric fog in the console settings, that’s what I did to fix the same issue.

command is “r.Lumen.TranslucencyVolume.Enable 0”

You still get the direct light’s contribution to the fog too.

Hi guys, I am having trouble to create a frosted glass in Lumen UE5, glosiness seems not to work, is there any tricky to make a frosted glass or it is not yet supported?

thanks,
Testa

There is one way to exclude static meshes/objects from Lumen: Set their Distance Field Resolution to 0.0.

Of course, that doesnt work for clouds or UMG.

1 Like

They’ll still be picked up by screen traces afaik

1 Like

You can also exlude static meshes from lumen by checking affect distance field lighting checkbox

I know, I am repeating myself, but Trees need fixing.

I found workarounds for every issue I found, but the Tree-issue… unfixable (and I am already lighting some trees up manually with spotlights -.-), but it has such a massive impact, visually.

It really doesnt matter how good the game looks overall, if the trees are simply black - while they actually shouldnt be:



I sincerely hope, that this will get attention, at least before final release of UE5.

EDIT:

btw, I noticed that the Darkness disappears when you look at the trees through glass… (at leas my glass, but doesnt work for the bushes.) its weird.

2 Likes

Great work! How did you make these light cubes in the last render?

Point light, cube with Subsurface Scattering material and a “hollow pyramid” (on each side, top points towards point light) on the inside which creates the “slightly visible frame/border” that visually fades into depth.

Nothing complicated, could probably be done with a material too, but probably quite annoying to achieve the same looks.

EDIT: I did send you a Message, dont want to derail this valuable thread.

1 Like