Displacement map normals

(tmcthree) #1

Apologies, this is going to be a dumb question.

I’m trying to export models wtih displacement maps from zbrush. But the verts seem to be displaced along a single vector rather than the normals of the object verticies.

Here’s what it looks like in blender and what it should look like in zbrush below.
Can anyone see what I’m missing?

(kabu) #2

I think swizzling is different. Blender XYZ is not Brush’s. There’s a tutorial from Nutelz here which probably is what you’re looking for.

(Secrop) #3

First, you’re using math nodes with colors…the displacement vector is transformed to a float here. Then you use a float as a displacement, and blender turns that float again into a vector, but with x=y=z=float.

If you want to multiply a vector with a float it’s better to use the MixRGB node or Separate/CombineXYZ.

(tmcthree) #4

Hi Kabu,
Thanks for your reply.

I’m not sure I know exactly what you mean, but if you mean that the V has to be flipped then I don’t think it’s that.
The map has been exported correctly from Zbrush and compatble with the model in blender when used as a colour map.
It’s just when I use it to displace that the issue occurs. The issue being that the models vertices aren’t being displaced along thier normals.

(tmcthree) #5

Hi Secrop,

Thanks that’s really useful information.

I’ve removed the math nodes but as you can see. The displacement is still occuing along a single vector rather than the normals of the verticies.

(tmcthree) #6

It looks to me like the verts are being displaced along a single vector reletive to the object, rather than each vertex displacing along it’s own normal.

(helluvamesh) #7

In Bender 2.80 there’s two new nodes Displacement and Vector Displacement, you have to use one of these. If I see it correctly this is a grayscale displacement map, not a vector displacement map, so use the Displacement node. Also, set the texture’s color space to Non-Color Data.

(tmcthree) #8

That’s the one, thanks Helluvamesh