Focal Distance post process setting affects mesh decal colour & ignores normals 5.2

Set the Focal Distance in the camera post processing settings to anything other than “0” and all mesh decals in the scene will render at a darker colour.
The following video shows the decal material applied to planes, not a decal projector. Projected decals still work fine, but mesh decals do not.

I’ve already narrowed it down to the focal distance by adding some debug keys to set it to 0 or 100 for example. That is the cause of the decals changing colour for me.

This was also not happening prior to upgrading to 5.2 from UE4.26, so it’s probably related to the other decal changes that stopped other things like “modulate” mode working too…

1 Like

After some additional testing, i’ve found that the normals are also being ignored from the underlying mesh. This could be the reason why the decals are darker?

EDIT: I also checked in a blank new project and it happens there too.

Edit 2: Included some setup steps so you can reproduce it yourself:

Update: I checked in 5.1 and this error does not occur! Looks like somebody broke something with 5.2 when they were working on decal optimisations for the path tracer?
" * We added Mesh Decal support and improved overall performance for decals."

1 Like

Did a test in 5.2.1 built from source. Seem to be working or am I missing something?

Tried it in 5.2.1 and I’m also not getting the weird change in luminescence that is happening with your decals.

Though I do only get the underlying normals when both the decal has some slight transparency (then the normal from underneath starts being visible).
Are you expecting it to mix both normal maps when the decal is at full opacity?

Are you definitely using mesh decals in this clip or are you using decal projectors?

It looks like you’re using projectors to me, as the edges appear soft in the video, but i might be wrong! This bug is not occurring with regular decal projectors, only with mesh decals (meshes with the decal material applied to them)

I have been able to verify this in a source build of 5.2 in an empty project, though I haven’t checked 5.2.1 because i didn’t see this bug mentioned as fixed in the change log.

After some more testing i found that the normals are in fact inverted. If you put a (0,0,-1) vector into the normals input of the decal material, the normals will be correct when the focal distance is not set to 0. But that means that when the focal distance is set to 0, they will be inverted… and the normal information underneath the mesh decal will be disregarded and become flat