Ollin

Randomness

random, Perlin noise, and the scatter helpers. All of them take a seed, so a run can be repeated exactly.

ExampleWhat it shows
Gaussian2000 dots a frame, placed by randomGaussian, so the bell curve becomes visible
NoiseFieldan 80×80 grid shaded by 3D Perlin noise, and the mouse scrubs through the field
NoiseKindsthe noise kinds side by side on one seeded field: simplexNoise, signedSimplexNoise split at zero, worley with its feature and jitter exposed as parameters, and turbulence
NoiseWavea wave of dots offset by signedNoise, which is smooth, as the noise counterpart to RandomBand
TilingNoiseone tile laid down nine times, once from fbm and once from tilingFbm, so you can see the seams and where they disappear
RandomBanda band of dots jittered by random, which is jagged, and the mouse re-rolls it
Ringdots scattered in an annulus by randomVector(innerRadius:outerRadius:), relative to scale, so the ring keeps its proportion
Variationsa whole composition per seed, which you explore from the inspector's Variation card and proof as a range with --export-grid
Walka seeded random walk that the clock reveals over time, and a click starts a fresh walk in a randomChoice color

Run one with swift run Example-Randomness-<Name>, for example swift run Example-Randomness-NoiseField.

↑↓ move ↩ open