ZBrush and Blender

I was curious if ZBrush could be combined in the same pipeline with Blender so I decided to test it. On the ZBrush site I found an example .obj file and a 16 bit tiff. The result looks really amazing I think, there are only a few issues:

  1. I’m not sure if Blender supports 16 channel tiff files, at higher displacement levels there are artifacts/banding.
  2. There is some distortion by the subsurf modifier for UV maps. In the Orange branch this should be fixed though.

http://www.xs4all.nl/~niels990/download/Heads.jpg
Rendered with Blender internal renderer in 18 seconds. Subsurf render level is set to 4.

In a few weeks i’m giong to start working on my short film for my final year in art school. The school has a ZBrush licence, so I know what I’ll be using. :smiley:

The model and displacement map was created by Pixolator at ZBrush central. http://206.145.80.239/zbc/showthread.php?t=20310

Hey there MadMesh,

  1. I’m not sure if Blender supports 16 channel tiff files, at higher displacement levels there are artifacts/banding.

Yeah, I am pretty sure that it doesn’t support 16 bit images at the moment, however, that doesn’t stop you from using a 16 bit displacement map. ZBrush can export an 8dot8 version of your displacement map. This splits the high frequency details from the low frequency ones ( major 8 and minor 8 ) and allows you to recombine it in your 3d app. Look under the “Alpha” menu at “DE Options”. This gives you further options for your displacement maps. I did some tests in Blender and it worked fine. What you need to do (iirc) is use “Multiply” and blend your minor 8 displacement map into your major 8. It will take some experimenting to get it to look the way you want.

Matt :slight_smile:

Thanx for the tip. I’m still learning ZBrush so I can use all the help I can get. Maybe using an OpenEXR file for the displacement map wil do the trick as well. Any help with using ZBrush in a Blender pipeline is welcome.

I would suggest you playaround with mesh sculpt which included with 241 as python script B-brush. You can use it like Zbrush! inside blender. Let me know if you are learning anything new as I am still learning to use this feature too. Yes I do like Zbrush(onlt use trail ver) but I also like blender more so if blender has feature builtin I would just use blender - it is very promising but at experiment stage.

This new B-brush tool is interresting but it doesn’t really do what I’m looking for. To get ZBrush like results in Blender I need to create huge meshes with the B-brush, without the ability to go back to a lowrez version. I also like the flexibility of displacement maps combined with subdivision surfaces that ZBrush provides.

One tool in Blender can hardly compare with the full features of ZBrush, I’m really looking to better integrate the two programs.

I heard Zbrush is not full 3D but 2.5D what is that mean??

What setting did you have to get that nice displacement?

The subsurf render level is set to 4. The Disp slider under the material buttons is set to 0.5

I’m not really sure how it works and exactly what 2.5 D means. I’m still learning the program myself.

From memory so probably sketchy. 2.5D is the number of dimensions. 2D, 3D etc. 2.5D diplaces the surface only, but in 3 dimensions. True 3D would displace the volume of the object as well.

I think. Somethin like that.

Hey there,

Yeah, ZBrush uses pixols (much like a voxel) to determine your geometry’s volume. You can paint and sculpt on it in 3D, but once your “tool” is dropped to the canvas it becomes 2.5D, much like a relief. Save for one key factor, ZBrush stores your object’s place in the 3D space, so that you can place things behind and in front of it, as-well-as its actual volume, also for the pixols that are obscured by other geometry. Take a torus for example: If you would set it on edge you wouldn’t be able to see the hole, but since ZBrush stores this information it is able to render light coming through the hole. You’ll have to raise the amount of rays though and turn “ZMode” on.

Matt :slight_smile:

Thank you for clear it up I think it would help a lot of others, I sort of having the idea of what is pixol but not quiet understand the technology behind it. Is there any different or benefit between 2.5D and 3D, why not started with 3D from the beginning?

:smiley: :smiley:

As far as I know only ZBrush uses 2.5D (Pixols). In ZBrush you can work on a high resolution version of your model (millions of polygons) and use that model to create a displacement map or a normal map. You can then use these maps on a lowrez version of the model in you 3D app of choice. The normal maps are very usefull for games and the displacement maps for pre-rendered work, in Blender you can also use the normal maps for bump (nor).

Another nice thing that you can do is generate a displacement map for the medium frequency details and then add the high frequency details with a normalmap, especially since Blender does not support subpixel displacements yet. However, there seems to be a problem for rendering tangent space normalmaps in Blender.

Matt :slight_smile:

I’ve noticed that the Orange branch of Blender has a “tangent” option for the texture coordinates. I hope that will fix the problem.

I downloaded the model and texture as well but cannot get it to work well. I get almost no displacement at all, which is not even similar to yours.
Could you perhaps post the settings you used? And, did you use the original tiff image or did you convert it?

Thanks in advance,
Robert

I converted the .tiff file to 8 bits and adjusted the contrast, I also vertically mirrored the image because ZBrush has a different UV system.

Disp: 0.75
Subsurf Render Levels: 4

Use UV mapping for the texture and enable subsurf UV in the subsurface modifier stack.

are there any news on this? Or has this been proposed to the developers at some point? 16 or 32 bit displacement map support would be too cool.
I get way too much banding at the moment.

Bitgimp, read this thread.

hmm thanks, although ive just realised that you now (CVS) can open openexrs in texture editor, which is not possible with 2.41.
Converted 32bit disp tiff to exr and that seems to work just fine. Have only found 1 issue so far, when i drive subsurf above 1 million it will render fine exactly 1 time, after this render the UVs are broken. Everything below renders fine and doesnt screw up UVs.