ZBrushCentral

Catmul Clark Algorithm 2023.0.1

Hey,

I’m having some workflow problems when taking models out of ZBrush and into Solidworks (Professional 2023 SP1.0) via a plugin called Power Surfacing RE (8_0_SW2023). I have been following up a line of enquiry with nPower (makers of Power Surfacing).

I have been using a combination of ZRemesher & ZModeler to create low poly models that I have sub divided and added refined details to. These have been exported as .obj files with one copy at SubD1 and the other copy at the highest SubD.

In theory I can open the lower subD .obj in Power Surfacing then bring in the higher subD as a reference mesh. I can then project the detail enabling Power Surfacing to convert the model to surfaces complete with all the sculpted details. (ref. How to Convert ZBrush meshes to SOLIDWORKS using the PowerSurfacingRE add-in (using ZBrush Remesher) - YouTube)

I’ve been having a few issues bring the exported .obj files into Power Surfacing since updating all our software and this is the response I have had from nPower:

“Just because the model is made of quads, it is not necessarily a SubD. SubD models follow the Catmul Clark algorithm. Z-Brush models are not SubD models. They are high poly models, which have usually millions of poygons and if you try to subdivide them, it will run out of memory because you will have billions of polygons."

I’m clearly not understanding something here. So my two questions are:

  1. By using the zModeler brush am I using something other than the Catmul Clark Algorithm?
  2. When I export the quadrangulated mesh as .obj am I failing to export using the Catmul Clark Algorithm?

I’m feeling pretty frustrated with my knowledge gap and would really appreciate a push in the right direction so that I understand what’s happening.

Many thanks :blush:

  1. Catmull Clark comes into play when the mesh is subdivided. The polygons are multiplied by a factor of 4. As long as the mesh topology is unaltered between the subdivided mesh and the lower resolution mesh, the lower subdivision level can be reconstructed from the higher.

  2. It depends on how the geometry you’re exporting was created.


**Just because the model is made of quads, it is not necessarily a SubD.**

This is accurate.

**Z-Brush models are not SubD models**

This is not accurate.


Sometimes models from ZBrush are subdivision surfaces. Sometimes they are not. It depends on whether the mesh has been subdivided. If a multi-resolution mesh has been subdivided up from a low poly base with multiple levels of subdivision, it is a subdivision model. If you export the highest level of subdivision that geometry has a mathematical relationship with the base level geometry, and the lower subdivision levels can be reconstructed from the higher one.

You can see this in ZBrush. Load the dog.zpr from Lightbox, and go to the Geometry palette and try to use the “Reconstruct Subdiv” button to try to reconstruct lower poly geometry from that mesh. This will fail because that model has not been subdivided up from lower poly geometry.

Now subdivide it twice and delete the lower levels of subdivision. Try to reconstruct it again. This time the program can re-build the two lower levels because the highest subdivision level can be cleanly divided by 4 back into those original polygons.

A high resolution sculptris pro model on the other hand has not been uniformly subdivided up from anything, even if the polycount is fairly high. The geometry cannot be cleanly divided. It is not a subdivision model.

However, if you ZRemesh that high resolution sculptris model into a low poly form, subdivide it, and project the detail from the original mesh onto it, it is now a subdivision model with multiple levels of subdivision.


Hope that helps :slight_smile:

1 Like

Only just found your message.

Thank you so much for this. I’m going to have a look at my model in light of your information before deciding on next steps. I’ll report back on progress in case it is of benefit to other users (possibly next week now, as I’ve been pulled away to another project).

Honestly, this is super helpful!!! Thank you!!!