3DM Files

 From:  Michael Gibson
5875.3 In reply to 5875.1 
Hi JQ,

> Hello Michael, any chance this will be corrected in the future?

It's up to KeyShot to correct it, you'll have to ask them if they plan on doing it or not.


> Right now anything imported or created in MOI and saved as .3DM file will not import
> in KeyShot4. Error message "???.3dm does not contain 3d geometry. Inside Rhino, please
> select View/Shaded prior to saving it." I know I can open it in Rhino and then re-save it,
> but it just adds extra steps and time.

The error message is not quite correct - there is definitely 3D NURBS geometry in the 3DM files that MoI writes, there just isn't any display mesh information.

Rhino is slow at calculating display mesh information for showing shaded surface display, so when it calculates this display information it also stores it alongside the "real" NURBS objects inside the 3DM file. MoI is much faster at calculating this same kind of display information so it does not try to store it in the file (which increases the file size by a large amount), and instead calculates any display information it needs just dynamically.

This information isn't saved by Rhino either unless you specifically do a shaded display inside of Rhino, and it's also discarded by Rhino if you do a "Save small" out from Rhino as well. So it's not always present in files saved by Rhino either.

That display mesh data is really sort of a cache of Rhino's runtime display data which often times may be rough and meant for a more quick display rather than a final quality render mesh, so it's not really a good means to be using for render data transfer anyway.

In order for this to be fixed, KeyShot needs to process the actual NURBS data that is contained inside the 3DM file rather than ignoring the NURBS data and only looking for this cached display mesh data. Until the time that KeyShot is improved to do that, I would recommend using OBJ format for the transfer into KeyShot rather than trying to open 3DM files directly in KeyShot. When you export the OBJ file from MoI, set "Output: Quads & Triangles" instead of the default "Output: N-gons", since KeyShot does not like to process complex N-gons. So export OBJ format out from MoI, and import OBJ format into KeyShot for rendering, that way you will not need to open any other program in between that sequence.

I would recommend contacting Luxion and asking them if they plan on improving their 3DM import to process NURBS geometry that is in the file instead of only looking for Rhino's cached display mesh information. Maybe if they get enough people asking about it they will update their 3DM importer to do that.

I do not currently plan on writing display mesh data out to 3DM format from MoI because it's not needed by MoI itself and so it would be really weird to pop up the meshing options dialog on every save for some data that MoI would not even be using, and also it greatly increases the file size of the 3DM file. And if I don't pop up the meshing options dialog at save time that would mean I would have to decide on one hard coded set of meshing parameters to use for the export.

- Michael