I am exploring the new geometry nodes, my goal is to create a very simple procedural tree: a brown cone and a few green pyramids on top of it 🌲. I would like to apply random variations to the pyramids like rotation, scale, color later maybe subdiv and deformation as well. For now I just work with cubes.
Geometry nodes seem not to support array-like operations so far (Blender 2.93), so I added an array modifier in front of it. However, when I use the Random Float node, I have no idea how to set the
seed individually for each object copy that was created by the Array modifier. I tried to make the
seed a custom parameter of the geometry nodes modifier and use a driver to set a unique value for each instance. However, that plan failed since
self in the driver expression points to the modifier, not to the object so I cant get something like an index out from the Array modifier, also connecting the driver to
location.z related to the original cube, not to its modified version.
My second try was to use the Bounding Box node and get the
min.z to feed it into the seed. This failed as well, since it also seems to relate to the original object before the application of Array.
So I am wondering, how to access the array instance index or similar data inside the geometry nodes?