How to efficiently instantiate object with memory-hungry modifiers? Using Alt + D to duplicate light meshes with heavy modifiers (like a leaf with a particle instance modifier or a trunk with a subdivision modifier) can lead to huge memory usage. Because only the base mesh is instantiated. The output mesh of the modifier, won't be instantiated. If you have 1000 trunks with a subdivision of 6, they will take 1000 times the required place in memory.

How can I instantiate efficiently such objects ?

Applying modifier works but doesn't allow efficient editing and produce big blend files.

Using Particle systems doesn't allow precise positioning. Hair systems allow particle painting, but hair are not visible in top view and if the emitter's mesh is modified, the "hairs" move as well, destroying everything.

This question comes following that question Convert large particle system(s) to one object efficiently, where I had big memory problems.
Make a group of your object(s) with Ctrl + G and name it (in the tool panel)
In the add menu, go to "Group Instance" and pick the group you want to instantiate.


If you append/link such an object, select "instance groups" on the links before appending/linking.

This allows you to render billions of polygons on a 4Gb computer with precise positioning and also saves space on your hard drive as well.