Download

stationary sunsky and lighting wraparound

Why is the lighting from a SunSky with stationary directional and skylight wrapping around edges of the meshes? I’ve tried changing lightmap UVs, adjusting material to use normals and disabled “Lightmap Directionality” under Mobile (even though this is not a for mobile scene), increasing lightmap resolution, doubling mesh distance field resolution, and more. Not anything has worked. Here’s a screenshot:

More importantly what do your lightmap UVs look like.

Hey Arkiras, thanks for replying. Here’s screenshots of the UVs in channel 0 and channel 1 (lightmap). I used Unreal’s Generate UV in the mesh editor for channel 0, and Unwrap UV for channel 1, and I tried discerning whether the margin was too narrow from the border to the wall mesh’s UV edges where it has the problem. I really don’t know if it is or not, though it seems to be and I would test a different margin if I knew how to change it in the engine. Do I need to create UVs in a separate program? I’m simply trying to get lighting to function correctly with the meshes from starter content.

I also generated a custom UV in channel 2, and the same result as channel 0 was produced. I changed the angle threshold for channel 1 to 30 and 90, and neither corrected it or changed it in the slightest, which I figured might happen.

Are you using light propogation volumes?

Also what does the material look like?

No, not using light propagation volumes. Dynamic Inset Shadows are disabled. Didn’t change Shadow Bias / Slope Bias. I’ve tried these things before when encountering this, except for propagation volumes, and it didn’t work. It doesn’t always occur either, whether in an empty project or a template (3P or 1P shooter, and ArchViz).

I had mesh distance fields disabled and it was a problem, and after enabling ‘Generate Mesh DFs’ it is still there. I moved both the directional and skylight actors to the sun side of the meshes, and the result was the highlight or light wrap problem changed sides while staying at the top edges. It is one of the most bizarre problems I’ve encountered thus far from all the things I’ve tried.

What does the material look like

The material is called M_Basic_Wall and it’s in Content > Starter Content > Materials folder. Do I need a texcoord node connected somewhere?

I tried different combinations of XYZA for the Normal input, using either 0 or 1. Didn’t work. Does it require a Metallic parameter?

Here’s another screenshot of the current state of things:

Unplug the normal.

Normal input probably shouldn’t be a vector param unless you’re going for a really stylized look. What’s happening is that you’re getting curvature shading because the normal param is pointing the normals in a direction that is not parallel to the surface.

If you want to leave the normal input plugged in, and assuming this material is still set to use tangent space normals, then you should be able to get the correct result by setting the normal param to 0,0,1. This won’t work if the material is using world space normals, as the +Z axis in world space points up, while the +Z axis in tangent space points out from the surface.

Thanks a ton. I forgot about that aspect of tangent space and world space +Z being different. I just did it, and it fixed it.