ZBrushCentral

FBX vs. OBJ export

When exporting a subtool as fbx it has a different scale than exported as obj. How can I ensure that the scale of both exported files match ?

Hello @zzeebee ,

The scale anything is exported at in ZBrush is ultimately determined by its unit size in the program, and the scale factor set in Tool> Export. Scale mismatch issues are usually the result of improper import procedure.

When you import something into ZBrush with the Import button, and there are zero values in the Tool> Export Menu, the incoming mesh is auto-scaled and auto-centered to work in ZBrush. If this did not happen, the mesh may be difficult or even impossible to work with in the program. Once this happens, the values required to restore the mesh to its original size and offset on export are recorded in that menu. Those values are unique to that tool.


If there are non-zero values in that menu at the time of import because you have another active tool selected, the incoming mesh will inherit those values. The only time you might want to do this is when you are trying to replace a mesh with a mesh of the exact same size and topology, for instance to import UVs. In most other cases this is likely to result in a scale shift, because the values required to restore the previous tool to its original size are not intended for the incoming mesh.

Typically, the default polymesh3d start primitive from the tool menu is selected as an import target for no other reason than that it has zeroed-out Export menu settings, and the user can be assured of a clean slate. The proper procedure for importing multiple meshes that are designed to fit together into ZBrush is to import them both with the procedure described above (make the poly star active then import), and then append one to the other. Importing a mesh directly into an active tool is likely to result in a scale shift.


There are some differences in OBJ vs FBX format in this regard which you might be noticing. I believe those formats behave differently when there is a 1 value for the export scale. If you follow the procedure I described above, this shouldn’t matter.

Good luck!

1 Like

Hi Spyndel,

Sorry for the confusing question. I meant exporting out of ZBrush, a subtool that was genuinely created in ZBrush. It has an xyz scale of 2.71, and the fbx export is much bigger than the same subtool exported as obj.

I could not find any scaling options in ZBrush either in the tool export nor in the FBX exporter/Importer plugin menus.

I did find a solution in Blender to scale- align both, so this question fortunately is not urgent anymore, but if you’re not too bus,y it would be interesting to know why ZBrush exports at different scale for different 3D formats.

Thanks !

As I explained, to the best of my knowledge it doesn’t if the same procedure is used for both. The following is a screenshot of an imported OBJ and FBX of the demosoldier in Maya:

If your results are differing, I would look at the importer, scale, or import settings in your target application. :confused:

That the demo soldier has the same scale on export is what I would expect. No idea why the model I created from scratch in ZBrush, is behaving differently. It must be indeed a Blender thing. Problem solved, Thanks again Spyndel ! :+1:

I dont try Maya, but yes, with Blender there is different size with obj and fbx. But for modeling I recommend obj export and import. For example you have specific dimensions for r gun parts, you can export and import from different apps and you will have the same scale everywhere. The right scale. Sometimes fbx importer and exporter in B and M is weird. So for modeling parts and using different sws and sending (importing, exporting) between ZBrush and other sws i recommend obj worklow. It always works- In ZBrush you have also Scale function, but who knows how it works.

This is great information, Thanks so much. It seems that in my case I can scale down the imported fbx. by the factor 10 and it fits perfectly the obj. in Blender.
Obj. did not work for me anymore as I decided to add some vertex paint in ZBrush, which Blender to my knowledge can’t read in an obj.

You can also try GoB plugin. Its like bridge (GoZ). And set ZBrush scale in addon preferences in Blender. For the same scale. In Blender node editor you can use Attribute node with Col name for polypainting and use it for diffuse slot. It will bring polypainting to the model. But i dont know anything about Vertex and obj together in Blender. Maybe the easiest is to export texture from ZBrush and use it in Blender?

I didn’t know the goB plugin- awesome, Thanks ! Since I am new to Blender and don’t have much time to learn it right now I decided not to use textures or UV’s . For my gray box renders which will be painted over in 2D later, Vertex colors are enough. If you want to import vertex paint into B you can use fbx. Or goB it seems :grinning:

Yes, youcan use thatbridge, but for painting it needs the highres mesh. If you need just some paint which you will use in 2D or Photoshop to make details or colors, i will just do some polygroups in ZBrush, UV Master with polygroups option on. It makes UVs and uses polygroups as UV islands. And in Texture I will do just Texture from polypainting, Clone, FlipV and export. I think its fine. And just plug that texture to diffusse. Sure that GoB imports vertex color to Blender (just need Attribute node with Col name into material Diffuseslot) And it shows vertexgroups. But for that colors through Blender bridge you need the highest subdiv level which is fine but sometimes not as great. But just for still frame render it is good. So for your case to have some color and just render and no movies and rigging and these things I think that GoB bridge is really easy solution. Or rendering just in ZBrush.

Yeah, that’s what I do , use polygroups to generate vertex paint in ZB , then export to B as fbx. No Animation, rigging, uv- ing, just the fun part of sculpting and painting on top for still images. I have been texture and lookdev artist for a long time, but for stills this is by far the fastest way.
The Zbrush camera is a weird creature, it seems to me not to be physically correct, even though the rendering capabilities are ok, but no comparison to “real” 3D packages.

:grinning: