Download

PointLight Leaking StaticMesh

http://s9.postimg.org/ak05wxjkt/image.png

Pointlights leaking seriously over one of my static mesh.
I double checked static mesh and there is no gap or something.
Indirect lighting is disabled for that spesific point light but still it leaks.
Making the light static or dynamic does not make a difference.

The light is inside the object.
This is where light stands.

http://s9.postimg.org/59v75mzbx/image.png

Make sure the light’s source radius isn’t intersecting with the mesh. If that is not the issue try enabling Cast Shadow as Two Sided in Lighting properties of the mesh and see if it changes anything.

Light source is zero, I will try Cast Shadows as Two Sided but it is not a two sided material or mesh.

Edit: I tried and didnt work.

Hi Caner,

FYI, the images are no longer working in the original post.

There are some things that need to be properly setup before you can get the results you’re looking for.

For Dynamic lighting to be blocked you need to adjust the shadow bias and the shadow filter sharpen for the best results. This will cause artifacts if taken too low though.

For static first you want to make sure that you have a properly setup Lightmap UV with the edges snapped to the grid (This post has a lot of information about lightmapping that may help. https://forums.unrealengine.com/showthread.php?46269-Modular-Asset-Lighting-Problem)

Ultimately though, for moderately sized walls you shouldn’t need to have a super high LM resolution to get decent shadows or block lighting if you’ve properly set up your LM UVs.

The biggest thing here aside from that is knowing the differences between building lighting on Preview vs Production build.

Mesh with fully static lighting and that is only 10cm thick.

Preview Build and 64 LM Resolution
64_Preview.PNG

Production Build and 64 LM Resolution
036f310b46c5cccee956798c059a965ef6843d23.png

There are two ways I can fix this minimal light leak issue.

  1. Fix the Lightmap UVs so that the hard edges are on the grid in my UV for the LM resolution I plan to target (which with this mesh they are not because I quickly threw it together for an example and that would likely fix this issue since it’s such a thin bit of light leak)

  2. Increase the LM resolution to 128. (I don’t recommend this without checking the LM grid snap solution first because if you can get away with smaller LM resolution the better!)

I hope this helps! :slight_smile:

Tim

http://s9.postimg.org/ak05wxjkt/image.png
http://s9.postimg.org/59v75mzbx/image.png

Thanks Tim, you are always helpful.
Decreasing shadow bias the leak also decreases but never fully gone.
My static mesh is not a wall Tim, you cant snap UVs of complicated objects in grid or something.
Lightmap res is 256 anyway.
This is the UV

You’re right on complex objects, of course. :slight_smile:

For a lot of things though, just the difference between preview and production builds is radically different. This will often resolve a lot of issues with light leaking.

I’ll get to some feedback in a moment, but to touch on the dynamic lighting first. There is going to be some edge leaking here regardless. The shadow bias and filter options help reduce it, but it won’t be perfect.

Ray Trace Distance Field Soft Shadows is a good alternative though for getting better dynamic shadows for your static meshes as well.

Back to your mesh. :slight_smile:

There are two things to start out with that I notice that may help.

  1. I can see you have two lights in your mesh. You have a spot light near the top and a point light at the bottom. Is there a reason to need both?

  2. You seem to have a lot of small geometry in your LM. If the chain is part of that small geo, which it appears it may be, it may be better to up the size in your UV for it. As a test, try using the generate LM in the mesh editor and let the engine repack this LM for you. Depending on the repack and if it re-sizes pieces you could see a better result.

As an example of a light fixture I’ve attached one that Eric and I used for our side project. I’ve used this as a test to see if I could get light bleed on mine, even in preview it’s not seeing the bleed. This is probably related to how my UVs are laid out.

What you can do to get more space would be the reduce the size of the fixture hull by almost half and resize the other objects to fill the space and not be as small. This should help in getting you better LM resolution for the smaller objects, since you don’t need the LM quality for the hull to necessarily go any higher.

I hope this makes sense. Let me know. :slight_smile:

Tim

Edit:

Can you also post images of your details panel for the Spot and the point light you’re using.

Thanks!

I tried production quality and didnt help.
There is just single point light I have placed and nothing more.
LightBulb is different mesh and I haved disabled its cast shadows property.
The other light seems in picture is skylight and it is disabled.

This is the object if you would take a look
http://www.mediafire.com/download/7xp966ulkz17ia6/Light.rar

The UV clusters are scaled automatically within Maya, I didnt manually changed scale of any UV cluster.

I tried your mesh and placed brandly new point light and it happened again.

Then I reset default material and disabled bloom, it reduced but it is still happening.

Then I converted the light to fully static and build lights in production quality but it is happening again.
As I said adjusting shadow bias reduce it but it is still very noticable.

If light color was white or a soft color it wouldnt be that noticable.

Hi Caner,

Can you post a picture of your details panel for the light as well?

It looks like you may have the light too far up in the mesh. If you have it inside Geometry like that it’s no surprise that it’ll bleed over some.

A better here solution is to lower the light some and then have two material setups for the inside of the light fixture and one for the bulb (which you already have).

Then set up an emisive material that you can control the output power of to fake some of the brightness inside.

Since there are no lighting channels in UE4 with deferred rendering you can’t tell the light to exclude this object from lighting so you’ll have to work around this.

For the emisive material setup I take a constant vector 3 plugged into a multiply for slot 1. Slot 2 is a scalar parameter. Plug the multiply into the emissive channel. Any value above 1 will give a brighter than output than the default.

Tim