ZBrushCentral

Booleans and Creasing

So I have noticed that Boolean removes creasing during the operation. Is there a way to preserve them?

Normally this would be easy as Boolean preserves polygroups so I can use Crease PG and just manually remove those transition creases but my client wants a workflow that removes handwork if possible.

Any ideas?

Hello @Athrial

I think you’ll find that the missing step here is using ZRemesher to clean the mesh up. For simple shapes like that, ZRemesher should be able to do a really good job of identifying and preserving edges, although this is a skillset in itself, and more complex than I’m going to go into here.

There is no magic auto-retopo solution to create optimized low poly geometry of the quality a human would make. There will need to be manual touch up at times. However, ZRemesher should be able to do most of the heavy lifting, and ZModeler can be used for quick spot touch up, which is generally more efficient than chasing perfect results in ZRemesher with trial and error.


So the basic idea here would be to make sure all your edges are creased, so you can subdivide your shapes and have them keep their hard edges. Then subdivide once or twice. The reason for this is that the extra points give ZRemesher more information to work with, and it tends to produce better results than super low poly geo.

I recommend a polygrouping strategy, since polygroups also make it easier for ZRemesher to identify edges, and they can be used with CreasePG to instantly re-crease all your polygroup borders after Zremeshing. Polygroups are also very useful at all stages of ZBrush work for managing your mesh.

So make sure all your creased edges fall along the borders of different polygroups on each side. In this case, all your planar surfaces should be distinct polygoups. Then Subdivide once to add a few more points. ZRemesh with the “Keep Groups” option active. Other options may also be supplementally useful.


ZRemesh at a fairly high target polycount so ZRemesher has enough polys to capture the form with, then reduce down with the “Half” option, correcting trouble spots as you go, until ZRemesher can no longer maintain the form. Your biggest issue will probably be little random polygroup slivers along the polygroup borders that either don’t belong to either polygroup and impair the ZRemesher results, or places where the the edge is breaking down due to a topological deformity. The Point> Stitch and Polygroup functions in ZModeler can be very useful for touching these areas up.


:bulb: Dynamic Subdivision is a very useful feature to preview the subdivision smoothing effect non-destructively on a low poly mesh and spot problem areas.


Then once you have some clean results you are happy with, use the Crease PG function to instantly restore all your creasing. You should now have clean, fairly low poly geometry with distinct edges and creasing, and well defined polygroups, great for further detail sculpting, painting, UV unwrap and texture creation.

Good luck!

One more thing. I missed the part about you wanting a softer transition on that selected edge. The easiest thing to do here would be to clean up your topology as a described above and then bevel that edge that should be nice and clean now.

Or, subdivide once or twice with the model fully creased, and then delete the creasing on that edge and subdivide once or twice more.

Remember also that two edges very close together when subdividing is essentially the same thing as a crease. You can move the edges further apart to create a softer edge.

:slightly_smiling_face:

Thank you for that reply. Your answer is actually pretty close to the solution I presented on the right with a Crease PG followed with proper ZRemeshing. Then I subdivided a few times after removing the desired crease between the parts. I am very familiar with all the methods you presented and can second the utility of all your tips which I appreciate you putting so much care into:)

My goal is to create a scenario where I do not have to apply any hand-work. Currently the only part I did by hand was remove that specific crease between the two shapes(the two boolean cubes).

That is why I was asking if there is any way to preserve creases from parts going into a Boolean Operation as this would automatically give me a mesh close to what I want. I could then ZRemesh with Keep Creases on.

Unfortunately I know there isn’t a lot of options to further control a boolean beyond addition/subtraction/union. Perhaps there is another method I’m not thinking of?