Home Technical Talk

[Zbrush, Unity3D] - Vector displacement map troubles

BaconDinosaur
polycounter lvl 6
Offline / Send Message
BaconDinosaur polycounter lvl 6
I'm trying to make a vector displacement map exported from Zbrush work in Unity3D using a tessellation shader. I have successfully managed to find what Flip-and-switch setting to use. However, it seems like Zbrush expects the targeted object to be subdivided using catmull clark operation rather than tessellation, because the object ends up being distorted otherwise. Here's images to show what I mean:


(Vector displacement map rendered in Blender 2.8, using catmull clark subdivision. The object appears properly.)


(The very same object, now subdivided using simple subdivision. Notice that the object is now distorted.)

Naturally, since tessellation doesn't work like catmull clark but rather just adds more geometry, this means the object is distorted when using a tessellation shader:


(Object rendered in Unity3D using tessellation shader. The object is distorted in the same fashion as it was in blender when simple subdivision was used.)

Why does Zbrush seemingly need catmull clark subdivision for vector displacement maps to work properly? Is there a way to make it work with simple subdivision?

Thank you for your time.
Sign In or Register to comment.