What could be causing this behavior with my static lights?

Hi all,
I’m not being able to understand why I’m getting this results. Really hope someone can “shed a light” (sorry…) on this!




Is the lighting baked? If so then it could be the issue with indirect lighting where smoothing causes variations between meshes, with baked lighting the specularity gets baked to a texture map so it would be affected by that.
Those look like simple meshes so you would do better with making one mesh for that wall section

yes static light on static objects. These are actually modular pieces, center ones are walls, extremities are corners, so I can’t really change that.

Is there an alternative way I can solve this issue with indirect lighting?

You can either make the wall section into one piece which would give the best performance, or you can change your lighting to dynamic which will avoid the issue altogether though that will give the worst performance and results since it won’t have GI.

You are telling me that I have no other choice but changing the mesh or using dynamic lights (impossible)?
That can’t be right…

Can’t it be a problem with the lightmaps?

I’ve applied all suggestions given here and still have the problem :frowning:

Looks like your normals might not be seamless. To test and see, go to your material, turn off Tangent Space Normals, make a constant 3 vector with only the blue channel on 1 and the other channels at 0, and plug it into your material’s normal slot, and see if the “seams” are still present.

Hi hippowombat,
thanks for the suggestion. I did this with the room materials:


and this is the result :frowning: with:

Indirect Lighting Quality = 4
Indirect Lighting Smoothness = 0.6
Static Lighting Level Scale = 0.1
Lighting Quality = production




Side note: I double-checked that the UV 2nd channel (lightmap) has all vertexes snapped to the grid, and that all parts are correctly spaced between each other. The only doubt I have is that I’m not sure if Blender’s UV Editor grid size is the same as ue4’s.

UE4 uses a grid that’s 2 minus the light map resolution set on the mesh, so 32x32 would be 30x30, 64x64 is 62x62 etc. That doesn’t completely get rid of the seams because UE4 bakes out each piece by itself, it’s not processing a modular hallway as one seamless flat wall.

You could either jack up the light mass settings to minize the seams, or you could design your modular assets around the limitations. Put a pillar, an intentional seamor, or pipes where there are seams on flat modular pieces.

Hi ZacD,
thanks for the info. I already tried using high lightmass settings and the results are basically the same. :frowning: This is indeed a very bad limitation and sadly I don’t think it’s that practical to put stuff in front of all seams/maps, but thanks for the suggestion.
I hope someone comes up with a miracle.

Yeah, the only way to fix this problem is to hide the seams. This is just the way lightmass works, it builds the lighting for each object individually. There are methods to improve the GI solver, but they involve cranking up your light builds from a few minutes to a few hours for a small scene. At that rate, it’s better to just use BSP for flat walls or build longer wall meshes for long hallways, and use some decoration between seams to break them up.

One of my friends made an entire floor out of static mesh panels. Not only was it taking a performance hit, but it always looked ugly. I got rid of everything and replaced it with a single clean section of BSP. It built beautifully. And the performance saved allowed enough room for a realtime reflection (this was back with UDK). Modular walls are not all they’re cracked up to be. I think a seam decoration would work in your best interest.

You can also make the modular sections much longer. Working in 1x1 blocks isn’t ideal for long flat hallways. Try making some 1x4 or 1x16 chunks and you’ll have less seams you’ll need to worry about. Artists and designers have been working around this for years, and honestly a bit of dressing typically makes hallways look better and more interesting.

What are these methods to improve the GI? I don’t really mind with long build times as long as the results are good.

We would like to try everything before reworking the mesh sizes, because we are using an alghoritm to automatically place them in the map, simplifying enormously the level design work.

Some people like to change the number of photon samples in the baselightmass.ini files to get a higher quality result. But lightmass as whole is not optimized to the point where that could even remotely be considered a good solution. I’ve never seen anyone get a good result out of lightmass with multiple meshes. Using BSP is the only way I’ve seen people make good walls. BSP, static meshes, and pieces to hide seams. I suggest taking a look at this thread to see some Archvis people (and Epic’s Daniel W.) talking about lightmass and quality. Just know that there is no one-size-fits-all solution to perfect lighting in UE4, hiding the issue is much easier than actually attempting to fix it. Daniel W. even said it’s far too complex to get CGI quality lighting algorithms to work in Lightmass. You need to keep in mind the lighting has to be built not just for one frame, but baked into an entire environment, so the methods that make Mental Ray’s lighting look amazing can’t be used to make UE4’s environments look amazing:

Right, lightmass is optimized so that it runs fast. You could get good results if you were able to bake lighting with something like Vray or Mental Ray, but it would be much much slower since you’re doing the entire environment.

I did learn tons from that thread, thanks for sharing it!
I was able to achieve some decent results only by tweaking the light mass:


And this is more than acceptable from the ingame camera view (it’s a topdown).

But I still haven’t figured out if these blurry areas are caused by the GI or the textures:


dynamically lit for comparison:


If all you did was change some lightmass settings, then it’s definitely the GI. Keep experimenting and see what happens.

We did. In the end we figured out we were using the wrong value for the UV editor grid spacing given our lightmap resolution.
Managed to get some pretty decent results even with the lowest lightmass settings (that is more than good since it’s a topdown):


Thanks everyone for pitching in, learned a lot!

Wow! This looks awesome! Congrats!