DocsDo something

Repeat things

A hundred rocks, a ring of pillars, a fence that keeps going. You never build these one at a time. You build the shape once, decide where the copies go, and the graph puts one at every spot. Change the shape and all hundred change with it.

When you need this you find yourself about to make the same thing twice.

Two halves, always

Every repeat is the same pair. Something produces a set of positions, and Instance On Points puts your shape at each one. Swapping the position half changes the arrangement without touching the shape, which is why this is worth learning as two things rather than one.

Circle Points gives you a ring. Scatter Points sprinkles positions over a surface you hand it. Hex Grid tiles an area. Spiral Points climbs, which is how you get a staircase.

Sit the shape down first

A copy is placed with its own origin at the point. If your shape is centred on its middle, half of every copy ends up underground.

Put a Place On before the instancing, with nothing wired into its Base. It measures the shape and moves it so its underside sits at zero, and it does that at whatever size the shape currently is, so it keeps working when you change the knobs.

Copies are cheap, meshes are not

Instancing keeps one copy of the geometry and draws it many times. A hundred instanced rocks cost roughly what one rock costs. Joining a hundred separate rocks does not.

This matters most for the thing you were going to do anyway: raise the count knob and see what happens.

Aiming the copies

Instance On Points has an Orient setting, and it is worth knowing before you need it. Copies can face along the direction of travel, which is what bricks and fence rails want, or outward from the centre, which is what doors and windows in a round tower want, or up along the surface they landed on, which is what trees on a hillside want.

What comes next

Right now every copy is identical, and that reads as obviously fake the moment there is more than a handful. Varying them is the next thing.

Open the editor and try it