How to subdivide without to loose the UV?

I created this mesh teeth per QuadMesh tool. I converted each quad to NURBS and so I got a single UV patch per quad. This NURBS object in converted to a mesh again. The teeth is a closed mesh with an UV island per quad. I applied a special texture and the look is perfect … only I need the object smoother.

I tried the Weaverbird catmullclark tool, but it destroy the UV. Doe’s someone knows a way to subdivide the shape and the current UV pattern is kept?

Attached my model.

Teeth.3dm (578.6 KB)

_Subdivide - command

I tried it but _subdivide keep the original shape and doesn’t smooth the surfaces. I wonder that this command doesn’t work like the Weaverbird _catmullclark. Did I have something overseen?

Have you tried the Smooth command?

Interesting command, but it doesn’t subdivide the surface, it move the exist polygons only, the mesh resolution isn’t changed. Anyway thank you for trying to help.

Does this file fit?
Teeth1.3dm (1005.8 KB)
Teeth2.3dm (3.7 MB)

Unfortunately the texture UV are lost, so the special quad&knot texture doesn’t work anymore.

Not sure that this can be done in Rhino & maintain your UV layout.

I exported your mesh from Rhino, imported in Blender, welded vertices, applied a subdivision modifier, exported from Blender, and re-imported to Rhino.

Some distortion (stretching / shrinking) at the poles, but overall a decent result.
Teeth_blender.3dm (5.5 MB)
Some errors in your mesh (vertices that don’t line up)seen here from front view:


This is a known bug. Workaround is:
Open the mesh in V6 and run uvEditor, then use Subdivide. Subdivide in V6 works as Catmul Clark subdivision unlike v7. I believe @dalelear will bring some of this functionality back

1 Like

I’m not finding the _Subdivide command in V6 (6.28.20196.11302, 2020-07-14)

Seems to provide desired result in V7-WIP if you run _Subdivide followed by _Smooth


1 Like

Fully dial the word - Subdivide, and Enter.


Tried _Subdivide command again (on Mac) as soon as I type ‘_Subd’ the command autocompletes to _SubdivideFace.

Tried on Windows, _Subdivide command works, but doesn’t keep original UV layout. I may have missed something as I usually work on Mac.

Was able to get _Subdivide command working on Mac by assigning an alias, but still can’t figure out how to keep the original UV layout.

Anyway, when running V7-WIP and using _Subdivide followed by _Smooth seems to answer the question posted by @Micha.



Thank you for all the interesting informations. Most I like that the subdivide of v6 works like expect the smoothing. The _smooth command seems to change the size of the tooth, it’s shrinking.

@Gijs I tried your way, but finally, after I pressed the “apply” button of the UVeditor, the UV are destroyed. Did I have something overseen?


That’s the fundamental nature of subdivision. Very similar to how a NURBS curve or surface will be inside the polygon defined by the control points unless there is reverse curvature.

ah, yes now I see, thing is I didn’t know that all your mesh faces were unwelded meshes. In that case the trick won’t work. It only works if the smoothed out mesh is welded and basically covering the whole UV space. In your case every mesh face covers the entire UV space. So the way @kev.r suggested is probably the best then.

@Gijs OK, I understand. Anyway, thank you for your suggestions.

Here a test of subdivide vs smooth. Good to see the advantage of subdivide.
The black mesh is the original, the red mesh is subdivided and get the doubled polycount, which helps to get a finer mesh angle, the model size isn’t changed so much.
The smoothed mesh (yellow) looks like the original one, no additional polygons seems to be added, the extreme values are moved down only. The smooth effect is like having a soap figure and washing is round and small.

But the idea was I think to subdivide in v7, giving you same shape and double quad count, (and keeping uvs) and then run smooth. This works pretty well.

Right @Gijs , I shouldn’t oversee - this combination is quite good. :slight_smile:

For a test I installed my very old and seldom used Ultimate Unwrap3D and interesting is - there I can weld the mesh without to destroy the UV and divide it also without destroying the UV.

Maybe it’s possible to update the mesh data handling at Rhino, so that it work like at this example mesh, where mesh edges can share the same place and can be welded without to destroy the UV. Also catmull-clark keeps the UV.

What do you think @dalelear?

tooth_catmull001.obj (3.0 MB)

You can do this in Blender and ZBrush as well. It seems that Rhino handles UV’s differently. (I used Blender to subdivide your mesh in my first post above).