Monday, 27 June 2011

Zbrush to 3ds Max Vray displacement workflow

A few notes for fellow people trying to figure out how to get a displacement map from Zbrush to Max and look the same ...

To get a clean result that's pretty close to what you see in Zbrush do the following in Max;

Begin by adding a VRayDisplacementMod to the object .. and adding the displacement map into the modifier. Then Drag the displacement map from the modifier to a blank slot in the material editor. Go to the map in the material editor and find the blur value and set it to the lowest which is 0.01 this will give you a crisp look. the default of 1.0 is always overkill and pretty silly.

Next back to the displacement modifier, set the edge length to around 0.5-1.5 the lower the value the better but gives you higher render times. The options are usually 0.5, 1, 2, 4, 8 anything out side those values is usually useless.

(at this point you might want to go in and up the memory for Vray found in Vray render settings, look for; dynamic memory limit. I have 8gb on my machine, so i threw this setting up to 3gb which seems to resolve any issues for me. The main issue occurs when you see a message while rendering, Vray will sometimes say; unloading geo, this is bad! at that point you wont see a render in less than a few hours and Max will likely hang, so good to up the memory to whatever you can handle and that will get rid of this message and return your renders to a few minutes)

Back in the modifier settings; set Max subdivs to either 64, 128, 256 or 512 depending on the object detail require. The more subdivs the sharper it will look, but of course depending on the displacement you might find you get a nice displacement at the low end, so 512 could be over kill, its worth playing with and seeing which works for your object and the distance from camera.

And of course, important note; set the Texmap min to -1.0 and max to 1.0 this is found at the bottom of the modifier, and very important! This way Max will see a range of -1 to +1 with zero being grey. By default Max sees zero as black, while Zbrush sees zero as midtone grey. So unless you get this correct, you're going to see some pretty inflated looking results!

Finally the 'Amount' value is how far it pushes out, this really does come down to experimenting, its pretty logical, if you set it to say 5cm then it will displace by 5cm, simple uh?

I'm curious about one thing if anyone knows, is there an advantage to adding a turbosmooth prior to adding the dispMod? ive noticed some people do and then use a lower subdiv setting, not sure if that helps.

I'm also slightly unsure if adding a bump map or normal map will help too, but it may.

So from the above info, i now have reasonably clean looking displacement maps in Vray that looks somewhat similar to the highres Zbrush tool. The biggest difference will be playing around with the amount value. I also find that the shaders in Zbrush can be misleading, and make things look more displaced than what they are so if you're using that default red shader in Z, always remember it will look less displaced in the final Max render.

And dont forget to always work in a linier workflow, gamma 2.2 on, with maps set to 2.2 also. Found in Max > rendering > Gamma.


1 comment:

  1. Thx alot dave this helped alot and i am also wondering about some of the questions you had. Hope we can share some knowledge with eachother i have a hompade at and mail at, Maybe we could help eachother out.