[Bug?] Multiple uv's + Vertex Paint + Normals = UV channel bleeding

Since a video says more than a thousand words. (Unless its not that kind of video)
I will start with the video explaining the situation in detail: UE4 Multiple UV Channels + Vertex Paint + Normal Problem - YouTube

I find it really hard to explain the situation, but here goes.

  1. 1st Normal map on uv channel 1 with a seam.
  2. 2nd normap map on uv channel 2 to cover seam from first normal map.
  3. apply vertex colors to blend between uv channel.
  4. ???
  5. Issue

This issue is at its worst if part of the UV on uv channel one is rotated (very noticeable at 45 degrees and getting significantly more noticeable the further the UV is rotated.

Basically the problem is that the seam created in the normal in UV channel one, bleeds into the normal that uses UV channel 2.

Hey Luos -

I am looking into this issue for you and I will respond as soon as I’ve been able to explore the issue further.

Thank You

Eric Ketchum

Hey Luos -

Tangent Space Normal Maps (the ones most blue in color and more common) will only work in the engine with UV0. You can use a normal map with other UV channels, but they must be Object Space Normal Maps (the ones which look more rainbow colored). This is why you were having difficulties with the blending using a normal map on another UV Channel.

Thank You

Eric Ketchum

flabbergasted

I know there is a transform node that can change these tangents (if I am correct) but…
Uhm… How would I use this with a vertex paint setup that has to blend between 5 materials (and 5 normal maps + detail normal map)

This problem has been a big pain in the butt for a long time now, and its setting me back over and over and since I have 400 meshes (for marketplace) that all have this problem… I am just at a loss.

any chance I could get some detailed (or even personal) help until this situation is solved?

Hello Erik,

I have been reading into the whole map blending/tangent/object/world space normal stuff and on https://docs.unrealengine.com/latest/INT/Engine/Rendering/Materials/ExpressionReference/VectorOps/index.html#transform it states that the vertex-color node cant be used together with the transform node.

In a moment of clarity I tried an alternative way to get the tangent space normal to be seamless by using a poor but seamless unwrapped version in channel one and then using channel 3 and 4 respectively as regular UV-channels for the materials and blending between them.

This does (finally) result in a perfectly seamless mesh but afaik each UV channel is 1 draw-call as well. so who knows how many draw-calls one mesh could end up having.

continues reading/learning

Hey Luos -

I was not referring to use of the tranform node but actually the method in which you render your normal map. I am working on a specific example for you, but here are two normal examples:

15809-normalex.png

Thank You

Eric Ketchum

1 Like