How to make modeling (for render) file lighter?

Hello. I’m actually modeling an architecture model and by now it has 0.85G. Saving takes about 2 minutes. Is there any way to make rhino file lighter? It is lagging depending on situations.

I accept modelling sugestions. All the model has been modeled with NURBs geometry. Heres some pictures.


I think the heavier geometry are on those gates, 3D texture wall and 3d modeled roof


How do I make this textured wall pannel lighter?


How to make roof lighter?


About block definitions.

I accept any sugestions. This is my first rhino modeling for rendering.

Hi @Gustavo_Soares_Silva
Extract the render mesh of the roof tiles, select them all and join them into a single mesh. Do the same for all the cubes on the wall panel and the fence: ExtractRenderMesh, select the meshes and Join into a single mesh. With join, make sure to run the command without any preselection first to make sure that JoinDisjointMeshes=Yes, or else Rhino will not join meshes that don’t share edges. It might not make the file smaller, but it should work wonders for the response on-screen.
HTH, Jakob

PS I mean join all the tiles into one mesh, all the cubes into another and the fence pickets into a third, as joint meshes will all have the same material.

2 Likes

Thanks a lot @Normand i didn’t know the ExtractRenderMesh (I dont know whow to mark commands in the forum yet) command and its surprisingly fast (faster than the Mesh command).

I believe its not all roses. Is there any pros and cons of using it? I want to know when to use and when not, whatelse I will ExtractRenderMesh all the model before rendering it :smiley:

Hi @Gustavo_Soares_Silva
Well, the drawback of extracting the render meshes is that the objects are now meshes, so editing them isn’t as straightforward as when they are NURBS. What I usually do is just make separate layers, one with the original NURBS objects and one with the render meshes - and then turn off the NURBS layer. If editing is needed, just turn the layer back on and extract the render meshes again. That will of course grow the file size, as meshes can be quite heavy in terms of disk space, but I think it’s worth the trade-off (which is of course easy to say, when there’s 54 TB of space on the server).

Rhino (and practically all other NURBS modelers) all create render meshes, as displaying NURBS geometry directly on screen is a lot of work/slow. Every time you create/edit an object, a render mesh is created for you to see on the screen, but it exists only “on screen”. In shaded view, ghosted view etc., the NURBS isocurves and edges are superimposed on top of that mesh (and the mesh wires are hidden), so all you see is the surface in its “NURBS-form”.

Another draw back is that disjoint meshes (meshes that are joined without physically touching edges) have to have the same material and UV mapping type, which can be limiting; but for repeat geometries like roof tiles, windows, plants etc., it can really make things a lot easier to navigate.

What ExtractRenderMesh does is simply to make that underlying mesh available to you. How precise/detailed those render meshes are is set under Tools>Options>Document Propertes>Mesh, so if you ever run into render meshes that are too coarse, changing those settings can alleviate that. There’s a couple of pages dedicated to just render meshes and their precision here and here.

For things like roof tiles (when dealing with NURBS), it might also be an idea to look into the custom render mesh settings, located in the properties panel of any given NURBS object(s).


There you can set specific render mesh settings for any object(s), so if you need fine and detailed meshes for some objects, but can settle for really coarse meshes for others, you can select a group/layer of objects and assign them their own settings, overruling the settings in Document Properties.

HTH, Jakob

PS And you can mark command names by selecting the text and clicking this </> little button (fifth button from the left) in the top of the editing window. It’s not an automatic thing, and merely makes it easier for people to identify where actual Rhino commands are mentioned and what is “just” text.

3 Likes

Thanks again @Normand for yout disposition and patience. You’re helping me a lot :grinning:

1 Like

Did you use Rhino blocks for repeating objects like the roof tiles?

Also did you disable “save texture”? Saving textures to the file slow down the save and cause a larger file.

1 Like

Hello @Micha. I used blocks just for the gate bars. I tryed to use the blocks in this 3d wall, but it started laggig a lot, then i remade them as a solid an then ExtractRenderMesh and will neve use them again.

Its kinda sad blocks are so hardware consuming, since it is one object that is replied.
In sketchup using components (same dynamic as blocks) makes your file lighter. Strange…

Well, if I disable the “save texture” i’ll lost my materials, no?! I cannot lost my materials xD

also make sure not make a block inside a block inside a block inside a block…

blocks work best in rhino if they are one level deep.

we see a lot of people in the arch biz download part5s from a vendor like a window assembly and it’s a multi level block internally blocked like 200 parts deep. Rhino hates this.

if that is the case, edit the block explode everything down to polysurfaces (use the explode block command) and then block it again one block deep.

this will violently speed up the response of your models.

you can also mesh a block for things like furniture and plants, then import the mesh and it will be much faster.

2 Likes

Right, I’m working a lot with blocks (one level deep) and it works great. I couldn’t work without them (large train interiors with a lot of seats).

“Save texture” collect all textures from all your locations and save them to the Rhino file. It’s useful if you send the 3D model to an other computer. But if you use your file at your computer only it’s a waste of time and HDD space and you can disable it. Your materials will be not affected.

1 Like

Good to know, I’ll always ExplodeBlock from external models I put into my model.

In this situation, what is the best command? ExtractRenderMesh, Mesh, or another command?

And do you mean that I should open the furniture or plant blocks in another Rhino window, mesh them, and then use Ctrl + C and Ctrl + V in the other model? Or should I actually use the Import command? What is the difference between Importing and Ctrl + C and Ctrl + V?

So that was my problem I had more than one level deep blocks. I’ll try one level deep block from now one, thanks for sharing

Good to know. That’s why I love this forum. Always learning new things from great people.

the mesh command is my goto for this type of stuff.

yes, edit the block in another window then save it with the modifications you did to make it more efficient.

1 Like

Wow. this is a great discussion. I also model for architecture and was not familiar with the extractrendermesh. I’ll be excited to give it a try. I should also be more dilegent with making and managing blocks.

1 Like