Creating Randomized PointClouds with Nested Cloners


Hi all,

I am attempting to create some randomized point clouds using the “Volume” distribution method and nested MoGraph Cloner hierarchies. In this case, I have some cloned cubes with randomized transforms as the upper hierarchy, and then the lower hierarchy is cloning spheres and distributing them according to the volumes of those cubes cloned in the upper hierarchy. Here’s a screenshot of my set up so far.

Left side: This is the desired effect, though in order to achieve this, I had to collapse the upper Cloner hierarchy of cubes down to a group of mesh objects.
Middle: This the pre-collapsed Cloner hierarchy I started with. Here, the sizes of the individual cloned sphere clusters inherit the scale value the cubes they are cloned to. I understand why this happens, but the reason I’m posting this is that I’m wondering if anyone knows a way to override the instantiation of specific parameters, in this case it would be ‘Scale’ and the random seed on ‘Volume’ distribution.
Right Side: This was simply a test to see if the way the sphere (level 2) clones would be distributed the same way for each cube (level 1). The answer is ‘yes’, as is evident.

As always, thanks to all responders ahead of time.


Have you tried connecting the cube-cloner with a connect object and using that as the sourse for the sphere-cloners? That might help If I understand what you’re trying to do correctly.



You could try and have a couple of Cloners with differing distribution Seeds for the volume, drop them both in the main cloner you have for your overall distribution and set that one’s Clone mode to “Blend”

brasco_C4D_Cloner_Random_Volume_Distro_01.c4d (Download)



Hi Martijn

Many thanks for the reply and sorry for my delayed response.
I had completely forgotten about the Connect object - thanks for reminding me of its existence!
Sure enough, it works and does just what I need it to!

:point_right: :bowing_man: :point_left:


hi brasc,

Many thanks for the reply and apologies for my own delayed response.
Turns out the solution Martijn suggested is exactly the ultra-zen one I was looking for, though yours is also really clever and cool - thanks for tuning me into a different approach! I imagine this could come in handy in a few situations.

Don’t feel obliged to respond to this, I’m just thinking aloud, but I would wonder if it’s possible at all in C4D (using Xpresso or other means) to accomplish what you’re doing here in a way where you wouldn’t have to set the cube variants up manually, but rather establish the number of instanced cubes and then run an an ‘under-the-hood’ expression on them that gives each its own seed value. I’ve seen this kind of thing done in Houdini - there, it involves typing an expression (rather than a simple value) into a parameter field. When I have a minute I may mess around with the Iteration node in Xpresso to see it gets me anywhere.

Many thanks again!!



From the two children and just changing the seed of the second child Cloner in that setup I linked you get almost infinite variation (if you separate the seed enough) and is already automatic, so I’m not sure the value of keeping it with one Cube variant and trying to set it up via Xpresso.