TSplines Patent Is In The Public Domain. Will SubD Get Local Detail?

Years ago I found myself looking up the patent for T-Splines and put it’s expiration date in my calendar. Well, today’s the day. The system and method for defining T-spline and T-NURCC surfaces using local refinements will be in the public domain. What does this mean for Rhino SubD and beyond?

I remember using the third-party T-Splines plug-in for Rhino in v4/v5; it was so buggy and the amount of time I spent recovering from crashes was excruciating, but people used it anyway because it afforded us the ability to add precise local detail and design surface forms that couldn’t otherwise be produced as efficiently. That is, until… Well, we all know what happened. I hope this technology will start to filter back into our design software because it’s really missed.


Wowwwwww. This brings back memories for sure, crazy how time flies.


I hope this means we get improved Mesh to Subd to Nurb conversion.

Rhino 7 & 8 still crash when converting high polycount meshes, but Rhino 5 + T-splines does it easily and reliably.


Can we get and example model for the crash? Here is a location to put a large model for us: Rhino - Upload to Support


@dalelear would be the one to comment on whether this tech would be useful to us. Back in the day when T-splines was shopping for a buyer, they approached Rhino several times, and if my memory serves correctly Dale was key in turning it away as there were some fundamental limitations to the tech that was patented.

He’s way smarter than I am so I’ll defer to his memory over mine, but I’m guessing the issue remains, and the answer will likely be the same, probably not for us.

But, I’m happy to be proven wrong and will rely on his input here as the final word.

Your memory of it’s crashy nature were correct- It was at best “nitroglycerin in a paint shaker” stable. I was 100% going to explode at some point, it was only a matter of when.

Compared to the SubD tools Dale wrote, it’s best left in the past IMO, as his implementation of SubD has been incredibly stable, at least for me, and I beat on it mercilessly.

But, if there are any bits we can cherry pick to improve upon the lovely work Dale has done, then that will truly be a wonderful thing.


Sure thing, I uploaded an example file

Is the crash happen when converting a high poly count mesh to a SubD? For that process use the QuadRemesh with the to SubD option. Much more efficient then a straight conversion.

There are a number of ways to refine this conversion, this was quick test. Projecting centerlines and feature lines would really help.


The crash happens while converting subD to Nurb. I was using the “convert to subD” button in the subD panel which worked great but from the looks of it created too dense of a subD for the conversion. This workflow does work just fine in R5+T-splines though.

Using QuadRemesh and adjusting the target quad count I was able to successfully convert the subD to Nurb in R8! I’ll play around with refining the mesh, but this is already great progress. Thanks Scott

1 Like

The decision, made 5 years ago or so, was not about the mathematics of T-splines vs other options.

We needed something for our customers and T-Splines was off the table because of the aforementioned patent issues. We chose Catmull-Clark subdivision with crease and sharp edge support because they are widely used in industry, can be converted to NURBS, and were not encumbered by patents when we added SubD.

We can evaluate supporting T-Splines at some future date, but it’s not going to happen in V8 and is very unlikely to happen in v9.


Hi Dale, could you please shed some light on why extraordinary vertices happen? (when converting from SubD to NURBS)
I imagine cutting holes centered at these vertices on the NURBS result, then patching those holes with continuity using something like XNURBS. Could that work as a Rhino feature?

Making quad meshes without any vertices with >4 edges to avoid extraordinary vertices is limiting. SolidWorks/Catia also have SUBD->NURBS tools, but I don’t know if their extraordinary vertices can have good continuity without bulges.

Also, I want to say that SubD is amazing and helped me in a ton of design situations. For me, the Mesh->SubD->Nurbs conversion alone puts Rhino ahead of so many 3D modeling tools.

1 Like

Was there anything t-splines was able to do that’s impossible or hard to do with subd?

1 Like

Well for one,

Subd can Make a model without crashing.


In all seriousness, anything you could do in Tsplines you can do in subd. Tsplines was simply subd with some unique math around t joints. It was the best and worst part of tsplines. It allowed specific detailing, but injected a lot of complexity you had to manage with topology tricks.

1 Like

All I need to say about T-splines, or like I used to call in among the Spanish-speaking McNeel family: T-papa; is best described in this clip from Cinema Paradiso:

The future is way more interesting than the past. Let’s go there!



Curious about this

1 Like

Posted 16 years ago on youtube:


There was a time where I considered myself to be a Tspline power user. Tsplines was THE app that got me into the Rhino eco system. It was exactly how I wanted to shape objects in 3d.

However, I pretty quickly stopped using T junctions in my patch layouts. I found they caused more issues than they solved. In particular they injected way to much complexity into the final NURBs object.

I’m actually pretty happy with SubD in Rhino these days, tho I miss the Tsplines gumball, hotkeys and HUD, those were WAY more productive than the current Rhino offerings.




it seems at the extraordinary vertices, continuity is still maintained :exploding_head: How’s that possible :face_with_monocle:?

1 Like

Agreed, that was a clever way to do it- they had an “above the glass, below the glass” paradigm that allowed for some unique functionality outside of Rhino.


Only G1 if I remember correctly- It’s been a while since I was in the Tsplines chair…


Couldn’t we make new friends and keep the old? Especially if certain attributes of the old help us do our work better.

But if there is something useful here, and it would improve SubD, and its no longer being blocked by patents, why not use it?