Rhino5 OSX with Keyshot

I’m having problems importing certain layers into Keyshot. I have asked Luxion what the problem was and they categorically answered : “…Extrusions are not supported inside KeyShot. This is a Rhino SDK deficiency.” First of all, they aren’t extruded parts but simple solids, and secondly, I have imported various extruded components and it works fine so I’m a little confused here. Could I get confirmation that the culprit is Rhino or not? I have responded to Luxion and awaiting their answer as well.

edit : I’m running tests and indeed some very primitive parts just aren’t importing at all! The extrusions no problem. Anyone run across similar issues with Keyshot? Also in Rhino itself, is it normal that if I copy/paste entire model with its layers into only one layer it doesn’t work? It systematically recreates the same layers. What if I want to save it all in one layer? How do I do that?

Thanks for any feedback

SelAll after Pasting and then right click the target layer and select Change Object Layer

EDIT: Didn’t see Rhino For Mac Sorry I will remove

wait don’t delete the post! It could apply for the mac version too, never know… At this point I’m taking any suggestions because I need to finish my work fast!

You do not have to use one of the extrusion commands to create an Extrusion object. The Box command, for example, will create Extrusions if Rhino is configured to do so (the UseExtrusions command controls this). You can determine if an object is a Brep or an Extrusion using the What command.

KeyShot and other external rendering tools use the render meshes that are cached on Brep and Extrusion objects. Support for cached render meshes on Extrusions was not added until Rhino 5 SR5. So, its possible that KeyShot does not know this new feature (of the SDK) is available. I know one of the developers there - I’ll get in touch with him.

– Dale

That sounds great!
I’ll definitely look into the parts with that command. Thanks dale!

@ Dale - That is exactly what’s happening. The ones that use the extrusion command seem to be the culprit. Makes sense because these primitives are usually worked on most of the time so they become polysurfaces, which would explain why they worked on previous models.

Until the KS importers are updated to the new SDK, you could just put a small round on any solid primitive edge. Example - put a .02" fillet on the top/bottom of a cylinder primitive. That will change the geometry creating a mesh, and it will show in KS.

Also, hard edges with a .01"-.03" round tend to look more natural too, as without you are essentially rendering a knife edge.

ConvertExtrusion will convert any extrusion objects into surfaces or polysuraces. The UseExtrusions command allows you to control whether Rhino even makes these to begin with.


True, but the difference here is between a general functional solution and “realistic” solution to the issue if the edges will show in the rendering. ConvertExtrusion will solve the problem, however, a tiny round will both solve the problem AND, in many instances, provide a better solution to the end goal - assuming such is a realistic rendering.

A manufactured product with an edge, even a 90 degree edge, such as the end of a cylinder solid, will rarely have a totally sharp edge unless it is intended cut. If you are sending a sharp edged primitive out to render, always add tiny fillets to any edges for more realistic renderings.

One stone two birds.

Yes, that’s exactly what i’ve done, created some small fillet. The components that didn’t import were one with hidden edges (so I didn’t bother for the sake of visual only) and the other primitives were there just to apply emissive light in ks. Thanks for the help everyone!

This problem is described in the Keyshot forums – try to make a tiny fillet on your objects in Rhino – then it’ll work :).