Lumen GI is screen space?

I made a simple archviz scene, and whatever indirect light I have from my directional light goes away and GI goes dark when I look up and my direct lighting is out of screen. is this how it works?

It’s eye adaptation. From what I can tell eye adaptation does not take GI into account, only direct light. This means that you can’t have space that is only lit by GI, you need to have direct light. Consequently it means that the current Lumen solution is only viable outdoors unless this is addressed.

Does lumen require eye Adaptation? Turning it off made light stop flickering on and off when I get away from the direct light source and more into the GI spots. But lumen gives a lot less GI with it off.

Does it need Eye adaptation?

Watch today’s stream: Lumen | Inside Unreal - YouTube

They talk about that issue and how to fix it.

When? I didn’t catch any talk about eye adaptation.

I did not say it was because of eye adaptation. When certain “conditions” are not met on a surface, Lumen resorts to SSGI and essentially turns the bounce lighring off when light part of a surface is not in view.

You can view what surface will and will not bounce light even when off screen by turning on Visualization / Lumen Scene, then input the console command ‘r.Lumen.DirectLighting.ForceOffscreenShadowing 1’

He explained and demoed it during the stream right when the editor crashed on him. It’s also mentioned here at the very bottom of the page: “Mismatch Between Shadow Maps and Ray-Traced Shadows”

Lumen solution is only viable outdoors unless this is addressed

Just turn off eye adaptation. You could even do it with a postprocessing volume that overrides the global volume, only for indoors.

In general, eye adaptation lets you get away with unnatural scene lighting levels/conditions, that may end up looking as artistically intended in normal conditions, but that responds poorly to any global or physical changes. I would look into setting up lighting based on “physical” parameters, without eye adaptation, and then controlling exposure using post process volumes, if I wanted control of lighting in a way that’s physically realistic.

Ok, so got some time at the PC. Here is en example of the issue:

First image with sun spot on plane. This is what we want consistently when moving the camera:

How it looks with Visualize | Lumen Scene:

Now with r.Lumen.DirectLighting.ForceOffscreenShadowing 1 :thinking:

Notice the floor is completley black here.

Result when looking up enough for sun spot on plane to go off screen:

Notice how room got darker and all bounce light from floor is gone.

Now fixing the issue, this is how the floor should look in Visualize | Lumen Scene with the console command active:

Now this is the result when looking up:

Now Lumen preserved the light bounces from the floor even when the Sun spot is off screen.

Video of me breaking and fixing the floor for Lumen: Lumen Mismatch Between Shadow Maps and Ray-Traced Shadows - YouTube

Hope this helps.


While i’m here, what’s up with auto exposure, sometimes called eye adaption? Why does it make such a difference in light? I thought it simply made it so when viewing light from a previously dark area, it slowly shows up, not completely change how light looks?

Exposure doesn’t really change the lighting. Look at it this way: 0 is complete dark while 1 is full white, the engine can only see within a range of 0.2 (for example) of that 0 to 1 range. So if your scene is light at 0.7 brightest and 0.3 darkest of that 0-1 scale, exposure moves to compensate showing 0.6-0.8, but everything from 0.81-1 is overexposed and everything from 0-0.59 is underexposed.

What you can do to work with the exposure is light up your scene within the range; this means your shadows lets say at the 0.4 range and light parts at the 0.6 range (again numbers totally made up to illustrate a point), this will allow you to set exposure to cover the entire range of 0.4-0.6. This is the same as how lighting is worked in films, which is measured in stops of light.

For this specifically it would be a dream come true if unreal had a False Color filter to help with exposure.

1 Like