Hi everybody,
I can’t export from Rhino to Blender preserving both layers and solids.
if I export in OBJ I can tessellate the mesh as I want and the imported mesh in Blender is perfect (manifold solid and with proper normals and shading), however, the layers are lost.
If I export in Glb or glTF I can preserve layer structure but the models are imported as exploded geometries (when I export and import preserving normals), or non-manifold geometries with bad flat shading (when I export without vertex normals and welding the vertices at import in Blender).
I’ve found these threads but none of them helped me solve the problem,
here’s the bests settings I’ve found for both OBJ and Glb but with the problems I’ve described before
A partial solution I’ve found is exporting the layers from Rhino 1 by 1 as OBJ and reorganising them manually in Blender but it is very cumbersome, do you maybe have a better solution for this problem?
I guess the problem is due to the fact that the mesh exported by Glb and glTF is the visualization mesh which is less accurate than the mesh calculated for OBJ, or maybe it’s the blender Glb import options which are less robust than the obj import options.
Yes, you did a terrific job with the plugin! unfortunately it imports exploded geometries (if you enter edit mode you will see that the solids are lost)
That is because Rhino mesh format has meshes with hard edges like this unwelded. You can simply do “Merge By Distance” in Blender in edit mode with all verts selected. And in object mode afterwards do Object > Shade Auto Smooth.
Unfortunately, this does not always work, the visualization meshes in Rhino are not made to be welded in the first place, so at sharp edges some vertices will not always match and thus they will not weld properly leaving the objects open in Blender.
But if you try export manually from Rhino in obj format the mesh that is exported is not the visualization mesh is a newly calculated mesh which is much more robust and keeps the vertices at sharp edges aligned and welded, this makes the models perfectly solid and closed when imported in Blender while also preserving the split normal shading (giving that the original poly-surface in Rhino is closed).
Also I can’t import 3dm with correct smooth shading with the plugin, it imports only flat shading for me
It would be amazing if it was possible to recalculate the meshes at import and not use the visualization meshes that Rhino has embedded in the file. But I’m sure this is not possible to do right from Blender. We would probably need a plugin to export a Blender file from Rhino rather than a plugin to import .3dm files into Blender, but I guess this would be much more difficult to do.
By default Rhino meshes are never welded on hard edges. But even then using Merge By Distance (mesh.remove_doubles operator) and adjusting the distance from 0.0001 to say 0.001 or higher will work.
Not by default. You have to actually change the meshing settings in the OBJ exporter and set things to be welded.
I don’t know what I’m doing differently, but I’ve used your 3dm file and I still see flat shading and also even if most vertices are welded some of them are not, you can try to filter the edges by trait and select non-manifold. I got this selection and in that point the mesh is not welded properly.
While if I export in obj and weld at export (in Rhino) and not at import (in Blender) it will weld them properly.
Is this after Merge By Distance (mesh.remove_doubles)? I don’t see that here. Yes, I have to re-apply Shade Auto Smooth after removing doubles, but there are no unwelded vertices here.
Yep I followed all your steps and I still got non-manifold edges after welding, can you send your Blender file so I can check as well?
PS: I don’t want to exploit too much your time, you already helped a lot, but in case you’d like to debugging the issue together maybe it’s faster to do it face to face in a 10 minutes meeting on any meeting platform you’d like, if you think it’s feasable I’m available anytime!