SubD and retoposnap

Will there be a retoposnap option for SubD like in Tsplines? This feature is essential for my workflow as an (orthopaedic) shoe last designer. I use it to make the shoes I make have the right fit.
Without it I am lost…


We are looking into it, yes.


One important thing to consider here is that the snapping should be based on the smooth mode of the new retopologized SubD. A fundamental limitation of all SubD tools is that they snap in cage-mode to reference geometry, and when you smooth the result you end up with something smaller in convex areas and something larger in concave areas.

For example if you retopologize the largest Matryoshka doll here you will end up with the second largest. If you retopologize that again you will end up with a size smaller, and so on:

I explained this limitation to the Tsplines team many years ago. They try to solve it with the TsCompensate tool which only works in a very limited set of highly controlled examples. It’s an industry-wide problem and one that all rookies (modelers and developers) fail to grasp or don’t think it’s important enough to solve. I fundamentally disagree since retopology has ONE-JOB: following exactly the reference geometry, not building a smaller Matryoshka doll (that’s a very small market).

This is a solvable problem and the talent, dedication and constant pursuit for exellence of the McNeel team makes them the perfect candidates to get this right. I can’t wait!


tsPull was a decent solution to this issue as well once you finished your retopo work.

1 Like

You think? I could never get that to do a good job for anything complex, especially when you need to hold hard-ish edges in place. It felt to me that it was more like a tsMelt command. Just me?

perfect solution… mathematically no, but pretty darn close to the original surface depending on that amount of edges in your new object. Pull had the option to use the face centers which in some cases could make up for the lack of edges in the new object, especially when trying to drastically reduce the edge count in the new object. Keeping this ball round was a real challenge without pull.


Completely true, TSplines retoposnap and TSpull do not follow the reference surface exactly, since the control mesh snaps to the reference object instead of the final subd surface. I have learned to work with this fuzzy behavior, because mostly my goal is not to duplicate a mesh exactly as a subD object. (A shoelast is not the same as a foot scan). In general I agree that this not exactly matching to a shape is a disadvantage .

Hi Trav, that actually does look very good. You are right. Much better than what I remember when using Tsplines. So if it’s something like this it would work for most cases. And BTW I don’t think anyone should expect mathematically correct/equivalent. If it’s accurate within a tolerance it should work. …maybe having a tolerance deviation heads-up display would be cool. You see what you did there? Giving yourself more work :joy:



You gotta go bigger, auto-retopo! Who wants to click anymore lol. =)

1 Like

I know I know. This is just to fix the exceptions of your wonderful autoretopo tool. I head the Quadmesh is progressing in that direction. I love the option of selecting Nurbs seams/edges to preserve as clean loops. Can’t wait to try that!

1 Like

I don’t know if Mcneel released some kind of retoposnap, pull to surface or something similar in the new subD tools, but as other mentioned this is crucial for my workflow too.
To solve this Matryoshka effect TS had an offset distance to the surface that helped while creating new polygons, it wasn’t a perfect solution but was better than nothing.

Some minutes after posting this I realized that it’s possible to pull points from a subD mesh to a surface, was that available from the beginning?

I also found that project do have history and lets you project from custom directions… thanks for all this new features.