Convert large particle system(s) to one object efficiently I place leaves on my trees with emitter particle systems. Then, to make a forest, I place those trees with another emitter (or hair) particle system. 

Problem is particles of particles don't work, I only get the trunks without leaves in my forest.

Following this question : How can I convert a hair-particle system into 3D, editable objects?, which solution takes ages (I use about 500 000 leaves per tree), I tried to write a python script, but comes to the same problem. Searching on google, I found Brecht saying it comes from the naming of object (leave.001, leave.002 .... leave.500000) which after 1000 iterations becomes pretty slow and after 10000 extremely slow (so naming 2000 object is much slower than twice the time of naming 1000 of them). Anyway, that step is useless, blender needs one big mesh with all leaves to allow instancing it, not 500000 objects with one linked mesh.

So question is how can I convert all the particles to one unique object in one step (or at least avoid it to take 28 hours every time) ?
Particle Instance modifier


  When a ParticleInstance modifier is added to an object, that object will be used as a particle shape on an object which has a particle system associated with it.



Instead of setting the leaf object in the render settings of your tree's particle system.
Use the "Particle Instance" modifier on the leaf itself.


This has the advantage that it can be used multiple times for multiple particles systems.