Skip to content
The Lab · Bench
EXP-013generativeLive

Wet ink.

A pool of water sitting on the site's paper, with real fluid dynamics underneath. Drag through it to lay pigment and the water carries it: it swirls, marbles, feathers at the edges, and never quite dries. Hover and you stir the pool without adding ink. There is no goal. It's the oldest satisfying thing there is.

One pool · It never dries

The water: Still

Drag to lay ink. Hold still and it blooms.

Hover to stir without adding pigment; double-tap to drop a whole drop. Sound up if you can.

Bench notes

The simulation
Navier–Stokes, solved on your GPU sixty times a second: the water's velocity field advects itself, a pressure solve keeps it incompressible, and vorticity confinement feeds the small whirls that numerical dissipation would otherwise kill. Every step is a fragment shader; the CPU never touches a pixel.
The pigment
Not glowing dye on black; every fluid toy on the internet already does that. Three pigments from the site's own palette are mixed by Beer–Lambert absorption, the physics of how watercolor actually darkens paper, and the edges granulate where pigment piles up against clear water, like sediment at the rim of a wash.
The sound
Synthesized in the browser, no recordings: a filtered-noise water bed that follows your stirring speed, and pitched sine grains when drops fall into the pool: the textbook bubble model, frequency rising as the bubble shrinks.