When noise becomes beauty
A flow field is a vector field that assigns a direction to every point in space. Drop thousands of particles into it, let each one drift along the local current, and trace the paths they carve. What emerges is organic, alive, hand-drawn — and entirely mathematical.
The fields below are defined by Perlin noise, a gradient noise function invented by Ken Perlin in 1983 for the film Tron. At each point, the noise value is mapped to an angle, and particles step in that direction. The result is a kind of frozen turbulence — the fingerprint of a function that is smooth, continuous, and unpredictable all at once.
Every piece on this page is generated live in your browser. Click "regenerate" to see a new variation. No two will ever be quite the same.
The simplest form: sample Perlin noise at each particle's position, multiply by 2π to get an angle, step in that direction. Repeat.
The noise scale parameter s controls the texture.
Small values produce broad, sweeping currents. Large values create tight,
turbulent eddies. The sweet spot — where structure and chaos coexist —
is where the art lives.
Standard Perlin flow fields have sources and sinks — places where particles converge and pile up, or diverge and leave voids. Curl noise eliminates this by using the curl of the noise field instead of the noise itself.
Because the curl of any scalar field is divergence-free, the resulting flow has no sources or sinks. Particles never bunch up or thin out. The lines weave around each other in smooth, parallel streams that feel like wood grain or geological strata.
Multiple flow fields, each driven by noise at a different offset, rendered in different colors. The layers don't interact — they pass through each other like currents at different depths. The visual depth comes from overlap and transparency alone.
Here the noise field is blended with radial forces around randomly placed centers. Near a center, particles spiral inward (or outward); far away, the noise dominates. The result is a landscape of competing attractors, each pulling the flow into its orbit.
Perlin noise starts with a grid of random gradient vectors. To evaluate
the noise at any point, you find the four surrounding grid corners,
compute the dot product of each corner's gradient with the vector
from that corner to your point, then interpolate using a smooth
fade curve: 6t⁵ − 15t⁴ + 10t³.
The genius is in the interpolation. Linear interpolation would produce visible grid artifacts. The quintic fade curve has zero first and second derivatives at 0 and 1, making transitions between grid cells imperceptibly smooth. The noise looks natural because it is smooth — infinitely differentiable, in fact.
What makes flow fields work is a deeper property: Perlin noise is band-limited. It has a characteristic spatial frequency determined by the grid spacing. This means the flow has structure at a particular scale — not random jitter, not uniform laminar flow, but coherent currents that twist and turn at a human-readable scale. Our eyes evolved to find patterns, and Perlin noise gives them just enough to latch onto.
There is something paradoxical about algorithmic art. The artist writes rules, not images. The work is a space of possibilities, not a single artifact. Every click of "regenerate" produces something new, yet recognizably from the same family — siblings sharing the same DNA of parameters and algorithms.
The question "which one is the art?" has no good answer. Is it the code? The parameters? Any particular rendering? All of them? Perhaps the art is the process — the act of defining a generative system and then surrendering control to it. You set the boundaries; the mathematics fills them in.