Download

[SOLVED] UVs from imported mesh slightly distorted causing texture misalignment

I’m working on this model, built in 3ds max and textured in Substance Painter. It contains UV shells which are at some points sliced across details generated by a high-res mesh.
This is usually not a problem since Substance bakes all these details perfectly across the UV seams. And importing the textures in 3ds max or Blender shows them aligning perfectly.

However, inside UE4 the textures are misaligned across seams:

](filedata/fetch?id=1819423&d=1602059278)
I’ve tracked down the issue, but not really how to fix it.

It appears that UV coordinates are slightly distorted after importing the FBX from 3ds max (or from Blender) into UE4.

I exported the mesh from UE4 back into 3ds max to check the UVs, and they are different enough to cause this misalignment.
For example, if I copy the positions of the UV vertices on the original (correct) mesh to the corresponding UV vertices on the mesh imported from UE4, the texture aligns as it should.

Here is a GIF showing the difference between the original (correct) mesh and the (distorted) mesh from UE4:

What can cause this distortion of the UV? It seems some UV shells are affected more than others.
To me it feels like the issue lies with UE4 rather than 3ds max and Blender causing the exact same issue.
No other software distorts the UVs like this when importing the same FBX. It also happens exporting as OBJ from 3ds max into UE4.

At first I thought that this might be an issue with overlapping or mirrored UVs, although the UV layout for this model contains mirrored and overlapping UVs there is no correlation between the issue and particular mirrored or overlapping UV shells. (I’m using a separate UV set for lightmaps, so this isn’t really an issue.)

In any case, I’m using 3ds max 2019 (latest) along with the latest version of Substance.
If anyone can make sense of this issue I’d be really happy.

Thank you.

UPDATE and SOLVED:
Enabling “Use full precision UV” for the LOD (or when importing) solved this issue.
Turns out it was not a bug!

1 Like

Many thanks for this really helpful thread/post as this issue was freaking me out (I thought I’d done something wrong during unwrapping even though I triple checked everything and it was right in every other package such as Max, RizomUV, Adobe Dimension etc)! Kudos :slight_smile: