
Fig. 05
Neil Blevins has written a very good tutorial about scattering objects (
http://www.neilblevins.com) and after reading this tutorial, I decided to use a similar method.
Distribution with Particle Flow
I started by creating a Particle Source. You can control all parameters of your ParticleFlow when you go into Particle View. I made a sphere as a helper object to scatter around the ground. This was essential in order to be able to use the proxy characteristic of my vraymeshes. Proxy objects lose their proxy characteristic if they are scattered directly. I replaced this sphere meshes with proxied pebble models in the later steps (Fig.06 & Fig.07).

Fig. 06

Fig. 07
ShapeInstance operator allows you to choose the particle geometry object. In my case it was the sphere. The PositionObject operator allows you to choose the emitter object. From the birth operator, you can adjust the amount of particles. If you want to scatter different types of geometry, you can make a parent dummy object and link the child objects to this. In my case, this was not necessary.
ParticleBake script and baking the particles into a mesh
After distributing the spheres with the particle flow, I baked the particles into a mesh by using Bobo's BakePFlowToObjects script. By making this, all particles become a mesh so they can be replaced (Fig.08). You can find this very useful script at:
http://www.scriptspot.com

Fig. 08
Replacing the particles with VrayMeshes (proxy objects of little stones)
For this part, I used another great script: ObjectReplacer by Neil Blevins. I replaced all dummy spheres with the meshes. These steps were necessary to be able to retain the proxy characteristic of the scattered objects.
Position, Rotation, Scale properties were also adjustable (Fig.09 & Fig.10).

Fig. 09