Indirect lighting different behavior on movable actor

I modelled a simple room (only planes) with Blender, made a Lightmap and imported it in UE 4.10. I got massive light bleeds so I changed the model to one with thick walls. The light bleeds are gone but I have different behaviors of movable actors (player character) and indirect lighting inside this room.

There is one directional light (sun) and a Lightmass Importance Volume around both rooms. I checked the Indirect Lighting Cache through the Preview Shadow Indicators. The correct color information is in both rooms. The second room (with thick walls) has additional white Shadow Indicators on the roof. The first room hasn’t. Is this the problem?

Are there any suggestion what could be the reason? Which one is the correct behavior? I would assume the first one but I am not very experienced in lighting with UE.

First room (planes):

Second room (thick walls):

Thank you!

Edit:

As suggested by Tim I doubled the Volume Lighting Samples Placement. The actor is now lit half by the inner indirect lighting and half by the outer from the roof(?) when I change the actor to ILCQ Point it is fully lit by the inner indirect light but it depends on the player position. Sometimes it is lit from the outside, sometimes from the inside. With ILCQ Volume the player is lit half from the outside and half from the inside and there are strange light bleeds at the edges at the player.

Hi Jul35,

Can you post a screenshot of your Volume Lighting Samples (Show > Visualize > Volume Lighting Samples) for each room?

It may be that you just need to adjust the Volume Lighting Samples placement to be more densely packed. This can be set in the World Settings > Lightmass > Volume Lighting Samples Placement. Using a lower value will place more samples to more accurately light the movable objects in indirectly lit areas.

-Tim

Thank you! I added some new screenshots and the behavior with more Volume Lighting Samples to the original post.

Looking at the images for the second floor, the top is getting much more indirect lighting cache samples that are near white. This is why your movable box is getting the white bounce. When using the ILCQ Volume Samples instead of Point this will not be as smooth or accurate.

Looking the samples for the second floor I would expect the movable mesh to be more accurately lit, but it seems like it’s being lit on the lower half by the room samples by the bright samples on the roof of floor 2.

Would you be willing to share this test map?

I am not sure what I have to share so here a reduced version of the project: http://we.tl/QCK8CWNCnW

Looking at the test map you’ve provided, there isn’t much way that I see around the bounce lighting for the samples on top of the room causing the issue. The difference you’re seeing between that and the other room is that the normals for the two sided material are pointing inward toward the room. So while they block light they are not placing a sample above its surface like the thick walled room. You can even see the issue with your box character if you move towards the walls where the samples are placed above the single planed room.

Some ways around this for better results:

  • Use other geometry outside of the room to block samples from being baked that are too bright. (This was used in the Realistic Rendering examples from Epic available in the Learn tab of the Launcher)
  • Adjust the Static Level Lighting Scale, this will place more samples densely packed but not for height, which is an issue for your character.
  • Adjust the sample height placement in the BaseLightmass.ini file (Engine folder > Config > ) under the DevOptions.PrecomputedDynamicObjectLighting set the value of SurfaceSampleLayerHeightSpacing. Default is 250, but lower values will set a different spacing in CM from the next one. So the first sample is placed at 50 units up from the floor (setting above this one), then each additional spacing is determined by this setting.
  • In the same config file you can set the number of layers that go up as well. Default is 2, but you can set higher values if needed. (NumSurfaceSampleLayers)

Thank you very much!

Raising the roof height solved the problem. I will check the Realistic Rendering example for something like a best practice.