My workflow uses a lot of Rhino + Maya, occasionally Max. I’m not sure if it’s changed but I remember in R7 it seemed like Rhino in general doesn’t allow/like meshes that have more than 1 material assigned to it. The best option for you is in Blender to go into Edit Mode, Separate, By Material (I think the shortcut is P? I don’t use Blender lots, sorry.)
Basically, when going from Blender/Maya >>> Rhino, you got 2 options:
- Bake everything into 1 texture map, or
- Separate submeshes by material, and join together all the mesh (parts that have the same material as 1 (potentially disjoint mesh).
And when going from Rhino >> Blender/Maya you want to export everything as meshes. Use FBX, make sure you’re embedding texture files, etc.
That is to say, I had (and still have) some issues but I found some best practices regarding meshes…maybe this helps a bit?
- Always mesh your nurbs before you export it. Use the “Mesh” command, don’t just export it and use the “Mesh” in the “Export As” dialog like you’ve shown. I’m not 100% sure I remember what the difference or reason is anymore, but sometimes you get different results.
- If you are going from Blender to Rhino, you could benefit a lot from baking the textures and packaging the UVs into one material. It’s just a lot less hassle, otherwise sometimes you have to reassign the material images by going into the materials panel and going Create New Material > Create From Texture Files…> (Navigate to folder with pbr bitmaps like albedo, normal, roughness, etc.). It’s not ideal to bake everything though.
- Sometimes the textures come in looking wrong, and that’s because software like Maya or Blender I think lines up textures with the 3d mesh instead of world coordinates?? I’m not 100% on what the technical explanation is, but basically there might be a pop-up under the object’s properties prompting you something about OCS mapping, which you have to click and it just fixes itself. (Texture mapping | Rhino 3-D modeling)
- To use ExtractRenderMesh with textures, you have to use the Bake command in Rhino I think ExtractRenderMesh | Rhino 3-D modeling) -
When using ExtractRenderMesh, procedural textures such as Noise or Granite will not preserve the selected NURBS or SubD objects texture mapping on the resulting mesh. If you need to preserve the texture mapping of procedural textures in assigned materials when extracting a render mesh or exporting a mesh from a NURBS or SubD object, use the Bake command first.
Also somebody more knowledgeable should probably jump in but as far as I understand, in order for Rhino to render anything, it has to convert to meshes anyways, which is why you get “ExtractRenderMesh” as a command - so I’m not sure your point about “Rhino can’t understand the texture converting from NURBs to mesh either” is true…
Re your thing about paint/walls, it’s possible to use Ctrl + Shift (or selection filters) to select by face, and assign materials to sub-objects if they are NURBS (Apply different materials within a polysurface). Not sure what the result is if you just export those things straight into Blender without doing the preprocessing I described, but you may want to mimic the output you get and try to put in to Rhino? Not sure.