← Gallery

Aggregation

Particles released one at a time, staggering about at random until they touch what is already there and freeze. Dendrites, from nothing but that.

Output

A set shares every setting — paper, border, the sketch’s own knobs — and differs only in the seed. Regenerate any one of them without touching the others.

PNG: 3508 × 4961 px at 300 dpi. PDF: vector, RGB, 297 × 420 mm page, no bleed. Printed area 297 × 420 mm.

0 mm

Millimetres of unprinted paper on every side. The piece is composed to fit what is left, not shrunk to fit it.

Seed

The bottom edge grows coral upward instead of a dendrite outward, because the particles rain down rather than closing in.

12

Only used by the scattered seed.

Growth

6500

How many are released. The whole cost of the render.

3.5

How close a walker has to get before it freezes. Sets the coarseness of the whole structure.

1.00

Chance of freezing on contact. Below one, walkers slide into the crevices before sticking, and the cluster fills in solid instead of branching.

2.0

How far a walker moves per step near the cluster. Long steps let it slip through gaps.

0.00

Bias on the walk: inward for the radial seeds, downward for the floor. Turns an even dendrite into a combed one.

Drawing

A branch is the line from a particle to the one it froze onto — the tree is recorded, not inferred.

2.5
1.00

Colour

How it works

Diffusion-limited aggregation, and it needs less code than anything else here. There is a seed. A particle is released some way from it and takes a random walk — no direction, no memory — until it comes within a set distance of something already frozen, at which point it freezes too. Then the next one. Nothing in the algorithm knows what a branch is.

The branching is entirely a consequence of one fact: a wandering particle is far more likely to meet a tip than a crevice, because the tips get in the way first. So a tip that gets slightly ahead catches more of what comes past, which puts it further ahead. The lead compounds, and the result is the dendrite — a shape whose arms are thin not because anything thinned them but because the space between them is screened. Turning the stickiness below one is the counterweight: a walker that declines to freeze on first contact gets a chance to slide down into a crevice, and the cluster fills in solid instead of branching.

The naive version spends nearly all of its time following particles nowhere near the cluster. This one takes a step proportional to its distance from the cluster’s outer radius, which is exact rather than approximate — a walk that far out is equally likely to arrive from any direction anyway. The release ring and the abandon radius both follow the cluster as it grows; a fixed release ring ends up inside the thing, and a fixed abandon radius starts throwing away most of the particles. Seeding from the bottom edge instead of a point changes the picture completely, because the particles then rain down on a front rather than closing in on a target.

R regenerate · S PNG · P PDF