Subdivision modeling is a really old type of modeling develped by Pixar, and implemented very well since many years back in all major 3D software packages, like 3D Studio Max, Maya, Cinema4D, Blender, etc and they all have excellent industry standard modeling tools and battle tested workflows.
Most of these have high licensing costs, but Blender is free, so I thought I’d ask:
What’s the difference between creating a subdivision model in, for example, Blender vs doing it in Rhino?
If I create the exact same model in Blender (avoiding ngons, naturally), import it into Rhino and use the ToSubD and ToNURB command on it, will I have lost anything compared to using the Subd modeling tools in Rhino?
Basic models should carry over. The biggest limitation you’ll run into are the edge crease not following. I think this is a pretty common problem with SubD files between programs in general. There might be a way to script something to interpret creasing data.
It might be possible to build on top of this Grasshopper tool which allows for interoperability between Blender and Grasshopper/Rhino. https://github.com/alessandro-zomparelli/mesh_sync Though as far as I know, Rhino SubD only supports creases as full or none where as Blender supports weighted creases.
I’ve started learning Blender specifically for this purpose. The mesh modeling workflow is much more complete and faster than Rhino. I think it’s just the nature of the programs. The controls in Rhino are built around being able to precisely model in a NURBs environment. Most interactions are methodical and require several inputs. NURBs modeling is about going through as few steps as possible in a very accurate matter. SubD seems to be a much more iterative process. Proportional editing, the shortcut system, the extrude commands are really nice.
If you do subd modelling in Blender with the intention to bring into Rhino then I suggest you stay away from creasing. Then you can use OBJ as the transport format for your control mesh (don’t use the final mesh). In Blender use edge loops to control the sharpness and straightness of your surfaces.
I must admit, we already used this live in a project, and it worked surprisingly well. We 3D scanned an object, did quad-remeshing in Zbrush, some proportional modifications in Blender, and then brought it into Rhino to finally get it over to Solidworks and our CNC Machining software. That’s quite the long tool chain, but it worked great for that particular project.
A somewhat more complex approach does actually allow you to export creases to Rhino, with the limitation that each edge can only be exported as non-creased or fully creased. This is how you go about it. Go into edit mode, edge selection mode. Select all edges. Choose: Edge->Clear Sharp to remove all “sharpness” marks. Choose: Select->Similar->Crease. The options of this command allow you to select all creases (use a treshold of 0.99) or creases with a weight equal, lesser, or more than a certain value. Or handpick the edges you want to be exported as creased. Choose: Edge->Mark Sharp. Then add an Edge Split modifier to your object and uncheck the Edge Angle option and make sure “Sharp Edges” is checked. This will “unweld” (in Rhino speak) all selected(the ones you want to export creased) edges. Export your object as an obj file, make sure to check “Apply Modifiers” or apply the Edge split modifier by hand. Of course you should make sure you export your lowpoly-cage, so the subdivision modifier should not be applied. Now start Rhino and import the exported obj file. Choose: SubD->From Object and turn on the MeshCreases option. The unwelded edges in your obj mesh will then be converted to creases in your Rhino Subd object. In Blender simply deactivate the Edge Split modifier to continue modeling. You can turn it back on when re-exporting.