Tesselator Quad-Remesher

Oh, fine, hope you find it useful.

I’m having quite a bit of fun with this! I’m trying out the Blender 2.8 sculpt tools… first time I’ve ever thought about sculpting in any program. I suck out loud, but Tesselator turned my nightmare of a sculpt into something that at least looks a little more organized. :slight_smile: I haven’t even played around with any of the settings - this is just me installing it and clicking a button.

1 Like

Nice sculpt, Glad you like tesselator also.

That’s too good for a first sculpt!

2 Likes

That’s nice of you to say! :slight_smile:

2 Likes

How would this work with a couple million polygon model?
I mean, would it last forever to do the remeshing? if not, I would buy it right away.
Thanks

It indeed will take forever in a model with more than 500k

my advice is to decimate your model before remesh, it doesnt need all that detail since it will be simplified further after the quad remesh.

from my tests, an Amd dual core 3.8GHz took around 3min to remesh the Nefertiti.obj scan with one million vertices. and only 40s to remesh the same model but decimated to 250k verts, and I can barely tell the difference.

2 Likes

Hi @Jeacom, I appreciate your work on this. I’m considering the possibilities of moving my creation workflow from Zbrush to Blender some day, but a few (okay, many) things are preventing that. One of them is the lack of a good (i.e. good for me) remesher.

One of the magical things about Zremesher is that it can interact with polygroups to form hard edges. I know Blender doesn’t have anything like polygroups but how difficult would it be to allow the user to make creases in geometry and have those creases (or something to that effect) both a) affect the result, and b) get preserved at the end of the remesh?

For more background information, I use Zremesher to do both hard surface and recover from booleans. Without the polygroup behaviour, this workflow would be toast. I’m totally spoiled in that I will remesh the same model countless times when modelling but the shape and character is preserved thanks to the polygroups.

1 Like

At a quick glance, seem like those polygroups are nothing more than Blender vertex groups… aren’t they?

yup, but they are more face groups and same face can belong to only one group

Well, that would be the closest analogue, but the whole workflow in Zbrush is built around polygroups being visible and manipulable at all times, and most actions you take can take them into account. They can function as mesh elements, hard edges and poly selections for various modelling commands. They can be isolated with a single click of the pen and you can make your brush strokes mask automatically to them.

By comparison, Blender vertex groups are not so prominent in the workflow as far as I can tell. I mean I’m a bit of a Blender noob but they do not seem as present in the software. Almost every panel mentions polygroups somewhere in Zbrush because just about all of the tools have been designed to take them into account.

Also in this context, what @ostapblender said is important since they need to be mutually exclusive to function as a guide for hard edges, well, without turning everything into a mess, I imagine.

I’m not sure if I’d want these features added to vertex groups or if I’d prefer a new type of grouping system for meshes with a modelling focus. Food for thought. :thinking:

Since Blender already has creases I assumed that would be the simplest Blender oriented method to follow. Anyway, out of respect to the creator here I won’t post it but I’ve found a potential alternative which might be good for my workflow that is tipped to be coming to Blender. I’m open to the solution coming from anywhere though.

2 Likes

What you allude to at the end uses smoothing groups(hard edges) and/or auto-detects hard edges based on angle - also, guides are a planned feature.

1 Like

well, I guess not much difficult, I already implemented something similar with the hard edge detection.
I guess it can be done with vertex groups but kinda is already done with grease pencil guides, maybe a bit more robustness and intersection detection would make it work.

thanks, its now one more feature to work on my list of missing features to implement :wink:

In terms of priority, its right below a proper automatic polygon scaling to reduce singularities.

I’m quite busy at the moment but once I free up my schedule I’m going to work again on my addons and definitely look in to this.

3 Likes

Hey guys, I’ve been experimenting with Cython and managed make a Cython version of the cross field smoothing algorithm and embed in a blender addon. and OMG I didn’t measure anything but It fells like 10x faster!

Seriously, it beats Numpy!

Cython seems like magic.

The numbers running are the current number of smoothing steps processed:

7 Likes

Using Tesselator daily here, so speed ups like that are like a paradise. So does that come with a .dll then?

Yes, its kinda like a dll but has the extension type .pyd, not sure about the tecnical details but It can be imported directly as if it were a simple script instead of having to mess with ctypes to load it.

1 Like

whoa, looks intriguing!

Hi @Jeacom:

I was playing around with my metaballs (heh), converted them to mesh, and ran Tesselator using the default settings. I haven’t done any real reading of this thread or other guides, so I was wondering if you could point me to resources that might help me to answer these questions. It’s perfectly fine if the resource is this thread - I just don’t want to start reading and get sucked into a rabbit hole, get interested in other things, and forget about why I was reading the thing in the first place. :slight_smile:

A) I’ve come to expect to see poles and ngons in anything that I do or that Tesselator does for me, unless the mesh is a cube or rectangle. It’s cool with me because I’ve used edit mode enough to know that me trying to get all reasonably same-size polys and all quads on any organic and/or hard-surface modeling projects is maddening, at least with my limited skill. Are there any settings you’d recommend to get as few poles/ngons as possible for something like the following:

B) And now here’s me being really lazy: In my line of work, I work with an Adobe Acrobat plugin called PDFSnake. It’s a simple little thing, yet it speeds up the workflow of getting n number of copies onto a single sheet of paper. The parameter dial-in boxes look like this:

X Offset: .05
Y Offset: .05
Number Up: 15
Paper Size: 12"x18"
Repeat Per Page: 1
Duplex: Yes

… and so on and so forth. Now, PDFSnake has an option to remember the settings. Like, if I were to load it, I wouldn’t have to type everything in again, I’d just hit a dropdown and select something I’ve saved called “Mark Tries To Put As Many Freaking Business Cards As He Can On 12x18 Paper - AGAIN”.

Would you consider that suggestion for Tesselator, if it doesn’t already have it. If it does have it, I missed it, and I’m sorry and I’ll look again.

C) Common uses? In your or someone else’s hours and hours of work on this, have you run across settings that are good for a specific thing?

Like “Preset 01: Best way to retopologize a sculpture that you want to be high-resolution and have quite a bit of fidelity to your original model.” or “Preset 02: Best way to retopologize a low-poly piece of furniture that’s JUST ABOUT perfectly fine right now, it just has a couple of screwed up places because the artist hasn’t had his third cup of coffee this morning.”

If you have a cheat sheet of those, I’d love to see it, and if you allow us to save presets, why not include stuff like that?

Thanks much, love your stuff. :slight_smile:

no, unfortunately it does generates a sort of constant rate of singularities, you can reduce it a bit by increasing the number of field smoothing repeats but nothing magical will happen, I want to implement an auto-scaling I saw in a paper that would get rid of like 70% of the singularities but that requires me to learn about least-squares and I couldn’t yet.

You mean presets? yeah, that is something I can make for the addon but that would imply there are optimal settings for the remesher and really there aren’t. each model might require special care, specially on the resolution sliders.

If you want tips, well, my only tip besides exploring the settings is to use the Mask Resolution and sculpt mask to set different parts of the model with different resolutions. I receive many messages of people saying that their models are being obliterated when actually all they needed is to mask small details and set a higher resolution for those.

Sounds good to me, thank you for your reply!