Import Rhinoceros 3D files into Blender

add-ons

(jesterKing) #1

Hey there,

I thought I’d tell here as well that I’ve started working on an importer add-on for Rhino 3d files (3dm). Much of the discussion for this script can be found also on the McNeel Discourse forum in the topic Using Rhino3dm in Blender . The add-on is currently written with Blender 2.80 in mind, I’m not doing an effort myself to support 2.79 - but help in that area is appreciated.

The repository for the add-on import_3dm is public. Much of the code is still pretty early development, but even so getting geometry and materials in is possible, and works pretty well already.

edit 2018.12.12: released v0.0.2 as a zipped add-on. Remove the old import_3dm.py before installing - and update to rhino3dm.py 0.1.4.

You can check videos on my YouTube channel. Here some direct links to videos:

So if you use Rhino 3D as part of your workflow I hope this add-on already can help you streamline the process from Rhino to Blender.


Rhino to blender
List of addons that work with 2.8
[HELP] Workflow Rhinoceros 5.4.1 to Blender 2.8
How setup a realistic interior light system using EEVEE
(ByteC) #2

Hey Jester, that is great, thank you.

I create nearly everything for my 3d printers in Rhino 6, having the possibility to directly load my models in Blender is super!

Cheers!


(jesterKing) #3

Good to hear you will be able to use this.

Do post some cool pictures of your work :slight_smile:


(Pantelis) #4

Hi! Thislooks awesome, and for me as an architect, it is an all time wanted feature since I use both software a lot. But I tried to install the normal way, as a zip, and I couldn’t. Also tried in both 2.80 and 2.79 but both do not seem to work.
Can you shed some light in the installation process please.
Thanks a lot!


(jesterKing) #5

@Kyr did you try the instructions as given in the README? I used the zip for Blender.

https://github.com/jesterKing/import_3dm#installation-on-windows

Can you elaborate on the steps you’ve taken, and what error messages you get?


(Pantelis) #6

Oh, my mistake! I hadn’t seen the instructions in the beginning.
But now I followed them and manage to install the addon successfully! Thanks a lot!

P.S.: in order to import the whole NURBS model, I have is to transform to meshes inside rhino, correct?


(jesterKing) #7

Just switch your model to Rendered mode, then save. Just make sure you don’t save with the checkbox “geometry only” checked. The Rendered mode creates the render meshes, those get saved with the file. If you are not sure, just do a Save As.

Once I get to it the importer will be able to ask Rhino to create the meshes for you during the import process - but that is still future music.


(Pantelis) #8

This is awesome!! It’s definitely one of the happiest cg-days of my life!!
Everything is imported and look great even in demanding files with lots of geometry.
Layers are there! Objects are nice and clean meshes!
Thank you so much!


(jesterKing) #9

You’re welcome.

Note that if you re-import the same file you should see only changed/new bits appear. All existing stuff will stay where it is (unless you modified something in Blender, then that gets overwritten by the importer).

Well, as clean as the Rhino mesher makes them - which isn’t always that great. But shouldn’t be hard to clean up in Blender. In Rhino 7 (already in the WIP I guess) there will be more tools to mesh NURBS and extrusions better.

If you can, please post some screenshots :slight_smile:


#10

Nice! I’ve tested it today and it works fine with very big CAD files. I opened one 4.5Gb 3dm file, took quite a while to open i Blender but it worked. 80 000 000 tris.
Seems like it comes in in the wrong scale. I think the model is in millimeters in Rhino but I have to set my clipping plane in Blender to 10000m to see the model. Would be good if we could set the import scale (or maybe we can but I missed it?)


(Chriscubmania) #11

Nathan, also left note on Rhino discourse about it not creating the individual block (instance) references and their transforms as objects and instead just importing the embedded block (instance) object.


(jesterKing) #12

Answered there, but for good measure:


#13

I love this addon and I use Rhino a lot in my workflow. Great job!
I added some feature request to the git hub. If I did know how to code I would help out, but I suck at coding.


(Dimitar) #14

This plugin will make the barrier for designers wishing to get into Blender tenfold easier! I can perhaps foresee an open source competitor to Enscape/Lumion for Rhino with Eevee in terms of ease of use with a future version of this plugin.


(jesterKing) #15

Thanks, I’ve labelled the new issues. Currently busy merging upstream Cycles into Rhino Cycles. I hope to get around working on the importer later this week (:

More tools in the box for the users!


(jesterKing) #16

A Rhino user joined the coding effort on the importer. I merged his first PR yesterday.

This makes it possible to use Visual Studio Code together with the awesome Blender extension for it (by @Jacques_Lucke, thanks!) .

Those who are interested in helping out with the add-on I urge to use Visual Studio Code with said extension, since it gives access to very nice debugging tools and integration with Blender.


(Metin Seven) #17

Cool add-on, thanks for sharing. Is this also fully compatible with the 3DM output of MoI 3D?


(jesterKing) #18

I haven’t used Moi 3d, but if it writes proper 3dm files it all should Just Work - assuming it can save render meshes as well with the document.

On a separate note, I just made the first release, tagged 0.0.2, available as a zip


(Metin Seven) #19

I posted a notice about the add-on at the MoI 3D discussion forum, and MoI’s developer (also former Rhino developer) responded:

“It does not appear to be compatible with 3DM files saved from MoI because it only processes display mesh information that Rhino caches in 3DM files and does not read NURBS data directly.”

That’s a pity. A dynamic bridge between MoI 3D and Blender would be nice.


(jesterKing) #20

It currently needs indeed the render meshes (display mesh), but I’ll be using Rhino Compute in the (near-ish) future, so that importing a 3DM without render meshes in the file will use a (local) Rhino instance for the meshing. You could of course also request the Moi 3d developer to save the display meshes as well…