SubD Limitation

Title and text revised with “limitation” replacing “deficency” because it more accurately describes what I found.

Added 2021 Jan 18: Same limitation also applies at creases in addition to naked edges.

SubD in Rhino has generated more interest and enthusiasm than any addition to Rhino in at least ten years. However it is not always the best tool.

I have experiemented with modeling boat hulls using SubD and have identified a significant limitation for my purposes. The boat hulls I model have exposed, naked edges. An inherent characteristic of SubD is the shapes have zero curvature normal to the exposed edges, and many of the shapes I am interested in have non-zero curvature at the exposed edges… This appears to be inherent in SubD and not something which can be eliminated by adding more points, etc.

Here is an example of a simple shape modeled as a NURBS surface, and the same shape converted to SubD. Contour curves have been allow direct comparison of the surfaces using curvature combs. SubD Deficency DC01.3dm (1.6 MB)


Yep, free edges on SubD are always zero curvature across the edge… often a lot less than ideal.


Another limitation for my purposes is when a SubD surface is converted to NURBS surfaces the number of control points goes up by a large factor compared to the number of vertices in the original SubD. This can make further refinement or editing of the NURBS surfaces tedious and I’ve found that frequently I’ll ultimately be ahead by remodeling the shape directly using NURBS.

It appears to me that SubD is best suited to smooth closed shapes where the limitation of zero curvature across edges and creases does not apply, and where the SubD shape will be of sufficient quality.


I’m thinking maybe it would help to extend your subd by adding another row. That way, the additional row gives you some curvature control.

Hi David, All,

What’s the downstream problem of zero curvature at outer edges? You cannot build continuous durares outside of it? Or something else?

Peter, is your suggestion for users to overextend SubD bodies and then trim back? Or are you suggesting a logic for a future _ToNurbs conversion?


Hi Gustavo - it is not a problem if your design allows for a zero curvature at those locations, which (I am betting) is seldom the case. For example, make a curve and revolve it 180 degrees as SubD…


The over-extending and trimming back will only help once the thing has been Nurbified.


1 Like

If the row is added inside the edge the curvature at the edge remains zero. The added row merely allow a more abrupt transition to zero curvature.

If the row is added outside the edge more control could be achieved but the extended surface would need to be converted to NURBS and trimmed, and controlling the locaiton of the trimmed edge would be difficult. Also two or more rows may need to be added to the SubD surface to achieve sufficient control.

@gustojunk Inability to create the design intent.

Overextend SubD was my thought.

Yeah that does look ugly. Never thought about it since intuitively we don’t build shapes like that. Usually our SubD edges do get denser with second rows in the direction of draft for molding.

Is there a workflow/development solution for this? Or it’s just what it is?


Hi Gustavo- as far as I know it is what it is - an inherent characteristic of SubD that you need to work around or work with.


The same limation applies at creases as well as naked edges. SubD surfaces always have zero curvature perpendicular to creases. This can be a significant limitation when attempting to model some shapes using SubD.

1 Like