Blender SubD to Rhino NURBS workflow?

I’m new to V7 and it looks really great. I’m currently trying to figure out my workflow to get a SubD file out of Blender and converted to a NURBS surface that’s clean and ready to export as a .step file.

This is what I tried and the results were OK, but not stellar. I was expecting surfaces that I could use Analyze>Zebra or Analyze>Environment. The surfaces are polysrf and not srf.

This is my workflow:
Export out the low poly SubD mesh from Blender, the coarsest mesh for the SubD there as an Obj. Then import that into Rhino 7 and run ToSubD on it. Then take that SubD and run ToNurbs on it.

Here are some pictures of the results I got. Useable, but not OMG. I assume my next step would be to link up the longer ribs with isocurves. Rebuild the isocurves as degree 3 curves and sweep with 2 rails.

What’s happening in the areas with the poles/stars/spiders?

In another experiment I tried to bring in a scan in .stl format. Used quadremesh and then tried to use ToNURBS and things got weird. The result was thousands of individual polys rather than one big sheet surface.

Would you kindly post files/screenshots from all steps in your process? I just tried to repeat your process exactly and I got a very clean NURBS surface - so you may be making an error unknowingly somewhere along the line.

Here is my process

  1. Build subd in Blender

  2. Export unsubdivided mesh to rhino

  1. Convert unsubdivided mesh to SUBD, without mucking with anything.

  2. Convert SUBD to NURBS.

As you can see, this works. However, there may be something specific about the file that you are working with that throws a wrench in the operation. Uploading your files would be best, unless you are working under an NDA, or something.

TectalTest01.obj (309.9 KB)

Just uploaded the un-subdivided .obj out of Blender. Curious to see what your results are. Thanks for your help.

A couple of problems.

Your unsubdivided model is much too complex. Your first thought when working with subd should be “how few faces can I get away with?” This simplifies the process drastically, and reduces the chances for errors, as well as making your model far more lightweight for the future.

For example, see my version of your helmet model. Yours has hundreds (at least) faces, while mine has ~20, yet we get very similar results when subdivided. This should be your goal - as few faces as possible.

You can see the results when I bring it into rhino -

Much simpler, but almost identical, NURBS model.

Ultimately, I’d say you should go over your original model again, keeping in mind what I said about as few faces as possible - only add detail where it is needed in the SubD, and not before.

I’d like to upload my .blend file, but it’s not a permitted file type.

subd_help_rhino.3dm (3.0 MB)

2 Likes

I’d love to see your blend file. I’m at the Blender forum under the same user name, if you want to send there. I’m going to review your data and get back to you with a better response. Looks hyper-interesting!

Wow. Wow. Wow! A light went off. What I need to do is have an ultra low poly base shape (<75 polys). The base shape drives the more detailed higher poly outer surface (1200-1500 poly per side). When it comes time to output a Rhino solid model> ToNURBS the base shape and rebuild as simple surfaces (CurveNetwork or Sweep2Curves. Which is best?). Then punch in the vent holes and loft to the vent tunnels.

I’m still confused about why a polysurf can’t be used for Analyze>Zebra? And what’s the best workflow to take the resulting 5 polysurfs from your simplified model and make it into a single unified surface?

Many thanks for your expert advice.

Did you use Rhino to retopologize your low poly model to my base shape, or Blender?

Polysurfaces, surfaces, extrusions, meshes and SubD objects all work as input to Zebra in Rhino V7
https://docs.mcneel.com/rhino/7/help/en-us/index.htm#commands/zebra.htm

Some shapes can be modeled as a NURBS polysurface but not as a single NURBS surface. Some shapes can technicaly be modeled as a very dense single NURBS surface but are very likely to have problems.

Your final helmet shape with the ribs and holes is a shape which perhaps could be modeled as a very dense trimmed NURBS surface but the results are likely to be unsatisfactory for most uses.

All untrimmed individual NURBS surfaces have four sides. One, two or three sides can have zero length. A NURBS surface can be trimmed including with holes but the underlying surface will still have four sides.

If I go to Analyze>Zebra it prompts “Select objects for zebra stripe analysis” and when I go to select the polysurface, it can’t be selected. It doesn’t seem to be locked. What am I doing wrong?

Understood that it may not work satisfactorily as one surface. Should I have a radial array of intersection planes that I make curves from intersections from? Then rebuild those curves with +/-10 control points as degree 5 and use those curves to loft a new surface? That’s what I’ve always done in the past.

Upload a .3dm file with the polysurface.

What version of Rhino are you using? Why are you posting in Serengeti which Rhino 7 has been released?

It’s already on the forum above “sub_d_help_rhino.3dm”. Under the 2 screenshots from Brynmurrel97. I didn’t know I’m in the wrong forum. Sorry.

Moved to SubD category

Do you mean TectalTest01.obj? If so that is a mesh, not a NURBS surface, and Zebra works on it in Rhino V7.

Or do you mean subd_help_rhino.3dm? If so Zebra works on the objects in it.

What version of Rhino are you using: V6 or V7?

Thanks David-

I must be doing something wrong. I’ve used Zebra about 5,000,000 times. I’ll look into it and get back to you if it doesn’t work. I’m using V7.

I finally got a chance to go back in and review the files. I was able to analyze>zebra with no problem. And I recreated your steps and got similar results.

Going back to the topic of my original post; Soon I’ll be faced with rebuilding a complicated bike helmet shape modeled in Blender into a real world water-tight solid in Rhino. It’s going to be every bit as complicated as the (first) helmet images I attached, and conversion from subd to nurbs came through as a patchwork of NURBS surfaces. Do I use those surfs to create splines, then create surfaces off of those splines and then stitch everything together? I’ve done this cad work for 3 helmets and it’s never been easy or fun. Having a simple base shape that I could convert from subd to NURBS and use that to add more specific vents onto is about the best I can strategize. Can you suggest any ideas/strategies that would make my work easier?