Stationary and moveable light passing through BSP

I’ve put together a greybox map for my project using BSP, it’s a large indoor space that has openings to the sky, so I subtracted most of the map out of a large additive cube.
This is where I’ve run into a huge issue, any non-static actors in the map (ie player, or even just moveable meshes etc) seem to be receiving absolutely no shadows from the BSP.


The moveable player character, moveable sphere and stationary sphere are fully lit as though they were out in the sun light. The static sphere and the rest of the BSP are lit perfectly fine.

Some things I have already tried:

  • Inserting cube meshes into the walls of the BSP - this works but is absolutely not sustainable - I can’t do that for every map.
  • I have a sky light and lightmass importance volume already.
  • Checked both the additive cube on the outside and the Directional Light are on the same lighting channel - but I can’t seem to find a lighting channel for the BSP.
  • Force No Precomputed Lighting makes it all dynamic - thus it just goes clean through the BSP and looks awful.

Here are my world settings, and the settings of the dynamic light.

This is also not the first time this has happened, in other projects whether using BSP or meshes seemingly the built lighting seems to leak through or in some cases, like this, pass clean through objects.

As well I know that using BSP is not advised but for greyboxing it’s essential, and I use it to set the visual tone of a level with lighting.

Any help figuring this out is greatly appreciated.

If you cannot live with the BSP lighting artifacts there is an option in their details panel to convert to static mesh.

I would go with an option like that but in the blockout phase I need to be able to edit the map easily, punch holes in walls and so on. If I converted it to an SM it would be locked in.

… devils advocate a bit. But if you are prototyping, why are you concernd about the final look if the light?

Also the issue is more likely to be the static mesh not using/sensing the volumetric light volume.
so if you open up the actor and click the mesh, and review its settings, you should have options that could make the shadows you have work.
which normally need to be triggered on finalized characters.

The reason I’m concerned about the final look is that it helps establish the look and feel of the map before I have to get in there with hundreds of meshes and so on. Using light to guide the player is also a useful tool even this early in development.
While you are correct, it really doesn’t effect the process too much, my more concerning reason for trying to solve this is that it is project wide, not just this map, and I have no idea how it happened. Making BSP for anything, virtually useless when it comes to light.

Regarding the settings on the mesh, those spheres are just straight out of the Actor Place panel, same goes for the directional light. No settings changed at all (except that each of them is Static, Stationary and Moveable respectively). Was there one you had in mind?

A lot. If you want to get the light to work you have no way but to work on the light. You can’t just push it from the panel and hope it works.

The first setting you should balance on the light is bias.
contact shadows also kill you later on so max them at the start.
dynamic indirect might need to get checked.

Transmission is usually checked on final stuff.
can’t deep shadow is also usually ticked.

In lightmas you can mess with just about anything to get what you want, so you need to try stuff
AO is always good to have on. To use it you need a movable skylight.
on the skylight you need to balance brightness of shaded areas.

All individual meshes/actors dragged onto the level have their own render settings that should probably be tweaked.
this is necessary on skeletal meshes.

You also probably want to generate the distance fields for AO which might mean you need to toggle it in project settings.

There’s a lot to it. You just need to spend a couple days properly setting up your lights…