Preventing mesh to pass through another

Hello, it’s been a moment that I try to fix a problem with a character and his clothes.
I don’t use apex clothes system, I just rig the clothes to the same skeleton than the character, in my 3d editor (blender) it looks good but I don’t know exactly why, in UE some part of the character are visible through clothes when animating, maybe because of the smoothing in UE:


(I colored clothes in blue and skin character in red)
I believe UE doesn’t handle Depth Priority that would allow me to draw clothes always on top of the character, but there is a way to prevent a mesh to pass through another (visually)?

Mess around with the World Displacement input in your clothes material.
get ‘VertexNormalWS’, multiply it by a small value, and plug that in to the ‘world position offset’ input. apply that only to the material assigned to the shirt. if the shirt is part of the same material, then add a ‘lerp’ node, plug this in to the ‘b’, ‘a’ should be ‘0’, and the alpha should be a mask where white represents the shirt.

1 Like

depth priority is only something for translucent materials but your seems solid/masked, so that’s not an issue here
also the “smoothing” in UE would have nothing to do either

this could potentially be caused by Z-fighting if the cloth/skin polygons were to close to eachother, but it doesn’t seem to be the case

I would actually suspect it’s a problem with your assets. are you confident that there are no overlaps if you see both assets playing the animation in your 3D modelling program?

Actually I have the same problem on Blender but much less, even not always visible depending on animation. But In UE4 it’s amplified, that’s why I was talking about smoothing.
The rigging render is not the same on blender and UE4, but anyways you’re right I have to fix my cloths rigging until there is no glitch at all on the UE4 side.
Thanks for your help