ZBrushCentral

Need more resolution for Polypainting but if I subdivide then I have too many polys.

Hello,
I’m in a bit of a rut with a 3d model I am working on. Right now, at the highest subdivision level I am at 6.9 million polygons which is high enough for detailed painting in the denser parts of the head but not enough resolution for some of the further parts.

The trouble is, when I subdivide, I get so many polys that the model becomes unworkable and ZBrush crashes. Too hot on one end, too cold on the lower end.

If there was some way in which I could only double the mesh instead of quadrupling it, for the last subdivision, it would give me all the resolution I need.

What are my options?

ZRemesh areas to reduce count where possible. Split into more subtools and or use Geometry HD. http://docs.pixologic.com/reference-guide/tool/polymesh/geometry-hd/

You could

  1. Subdivde locally by hiding or masking all but the area you want to increase at the lowest subd level, and subdividing.

  2. (recommended) Retopologize your base mesh with Zremesher, and make use of its polypaint density feature to deliver more polygons to the areas you want, and save them where possible. Project any existing detail onto your retopologized mesh. Aim for a base polygon count that will give you the desired polygon count when fully subdivided.

  3. Manually retopo as desired, then as #2 above.

Wait, you can subdivide only some parts based on masking? That changes everything.

I think I might go with that because I need to maintain the integrity of the base mesh because the base mesh has already been rigged in another program and if I mess with the base mesh then I’ll need to rebuild the rig and I obviously don’t want to do that.

Local subdivision will alter the geometry of the base mesh because you have to do it on SUBD level 1, and result in some pretty ugly topology. It can be useful if you only need a little more resolution here and there to get a smooth projection or map export out of, but it wont result in a pretty mesh. I don’t understand the particulars of your situation, but it seems to me as long as you’re altering your base mesh topology, and thereby breaking anything tied to that particular geometry, you might as well use Zremehser to make a much more efficient one with far better polyflow.

It’s up to you. In any event, it would be good to read up on the functions of Zremesher to see the kind of options you have. It’s a very flexible tool, and will also let you partially retoplogize a mesh, as well direct the polygon density and adherence to detail:

http://docs.pixologic.com/user-guide/3d-modeling/topology/zremesher/

As Doug said, make sure you split anything off into a separate subtool that could logically be split. If you can’t alter your base topology at all, then you should explore HD GEO that Doug linked previously.

Good luck!

Oh, unless I’m doing something wrong, it appears that I do in fact have the ability to subdivide a non-masked area BUT I don’t get subdivision levels from it.

Thank you very much for the leads, I am going to try to determine if it is possible for a separate subtool that has been retopologized to share the same UV’s, because ultimately, if I can still get the same UV’s then it all works out.

Even if you alter the base geometry by locally subdividing the mesh, you should be able to easily transfer your polypaint back to your original/production mesh’s texture by using a program like xnormal or something similar (which won’t require identical topology or uvs between the meshes). Locally subdividing should also preserve the original UVs as well, enabling you to quickly transfer your polypaint to an identical texture layout as well. Treating the polypainted mesh as a different tool than your production mesh like this can provide more options like this.

Zbrush can transfer texture, polypaint and sculpting detail between different meshes and different sets of UVs.

Are there any good tutorials you guys have encountered?

I’m grateful for all the help you guys have already furnished for me but I’m just still feeling quite a bit lost.

I mean, I have a head, with seven subdivision levels, at level 1 it has 1686 polys and at level 7 it has 6.8 million polys. If I give it one more subdivision then it’s something like 27 million polys and that just doesn’t work (maybe it will one day when ZBrush is 64bit).

I really don’t know how to proceed.

Do I go to subdivision 1, duplicate the subtool, zremesh, and then subdivide multiple times? I would lose all of the detail I had above subd 1 before, wouldn’t I? And even after I painted the higher poly alternate subtool, how do I make sure that the texture map that is spit out is compatible?

Maybe I’m having a really off day or something but I’m having trouble synthesizing the sequence of events?

Gosh, this would all be much easier if ZBrush didn’t crash in the presence of 27 millions polygons.

With project all? From my experience, using a dedicated baker has always been quicker, simpler, and less error prone than trying to get one mesh that has everything you need. Projection is a fantastic tool when it is needed, but I find that when it is only being used in substitution for what a bake can take quick care of then it usually isn’t the best tool for the job and can potentially slow things down (having to store morph targets to paint out projection errors in tight spots, find the right settings to use for the projection distances, gradually project it in increments, etc). Not to mention a slew of other problems that are guaranteed to pop up when it comes to using it in conjunction with an automatic retopology tool, when the very goal is to preserve an existing production mesh. I just foresee a lot of unnecessary hoops that will need to be jumped through if his pipeline isn’t planned around such things, making a bake look like smooth sailing.

I really don’t know how to proceed. Do I go to subdivision 1, duplicate the subtool, zremesh, and then subdivide multiple times? I would lose all of the detail I had above subd 1 before, wouldn’t I? And even after I painted the higher poly alternate subtool, how do I make sure that the texture map that is spit out is compatible?

One method would be to duplicate the subtool (at any subdivision level), then go to the highest level and delete the lower levels. Then locally subdivide the areas that you need more density in from there. This new mesh wont have any subdivision levels as you’ve found out, but it should have the vertex density you need while retaining the existing UV set, which means you should be able to create a texturemap from polypaint the traditional zbrush way and have it match your original mesh.

ZRemeshing almost takes the place of subdivision, (it can remesh to half, same or double), if you look at it that way. And you can vary it on different parts of your mesh. Take advantage of hiding parts of the mesh as well as the ZRemesher guides brush to ‘steer’ your topology. I did see a video on the Pixologic website. That should be plenty of points for the head. Maybe geometry HD is what you need. Best to stay with as few points as possible, make sure smooth normals is checked in BPR render properties, it can make a difference. Are you just sure you have bare minimum points on each level to sculpt? That number sounds really high to me.

Cyrid, your advice was spot on.

The layout on the UV map is the same so Texture maps created from a locally subdivided model are interchangeable with an unaltered model.

My only quibble is that for some reason locally subdividing a subtool seems to take a really long time. Maybe the Mask needs to not have a gradient fall off.

Cheers. Thank you all for your help. I’m back on the road.

Are there any settings I can use to make the subdividing visible polys command more efficient?

The trouble isn’t that it’s too slow but if I run the operation on too large of a surface area then Zbrush eventually crashes.

Just now I tried to run subdivide visible polys on most of the face and it ran for 20 minutes, the progress bar got to around 67 percent and then Zbrush crashed.

In general, what can I do to make Zbrush less likely to crash?

I don’t mind if it needs a lot of time to do something I want it to do but all of the crashing is a bit tiresome after a while.

Oh well, worse comes to worse, I’ll just have to make my subdividing visible polys command on small and targeted areas where I’m painting.

You could try slicing the tool up a bit, and splitting the mesh into subtools with groupsplit. It would be the same deal (the new mesh should have identical uvs), but it might be less data for zbrush to process. This would spit out multiple textures though (one per subtool), so you’d either have to composite them back together in a program like photoshop, try using the multimap exporter plugin which should combine them all back together (though I’m not sure how it would react with the seam areas where you’d want no padding), or try merging the subtools back into one mesh once you have your areas sufficiently divided.

As you like.

I routinely use projection to transfer detail to different meshes in completely painless fashion as a regular part of my workflow. With some meshes I do it as freqeuntly as some people dynamesh. The vast majority of the time, it takes as much effort as pushing a few buttons. With polypaint to texture conversions and vice versa, you can also transfer textures to disparate UV sets. When errors do pop up, it’s usually a matter of increasing a value of a Projection slider (for instance, the Dist slider is set way too low by default, and this accounts for the majority of projection flaws), correcting a flaw in the base topology, or adjusting the polyflow of a base object which Zremsher now makes pretty painless.

But of course, all that comes with experience with the functions, and the experience of a new user like Badsearcher may vary.