Option 37: reaction-diffusion. The bot's skin grows living animal markings from two simulated chemicals, the maths Alan Turing proposed in 1952 for how animals get spots and stripes. The pattern grows across a rotating sphere. Tap or drag on the bot to seed new growth. **Two chemicals, four rules.** The skin is a 160×80 grid wrapped round the sphere. Each cell holds two chemicals, A and B (the Gray–Scott model): - A is fed in steadily (feed rate F). - B is removed steadily (kill rate k). - Where A meets two units of B, it turns into B: B makes more of itself. - Both spread to neighbouring cells, A twice as fast as B. **Patterns appear from those rules alone.** B blooms locally, but fast-spreading A starves the space around each bloom. That tension settles into regular markings. Turing predicted this in 1952; real animal skin was later shown to use similar chemical signals. **Four presets, only two numbers apart:** **Drag across the bot.** You seed chemical B, and the pattern grows outward from your stroke, following the current rules. **Leopard spots, then nudge the kill rate slowly from 0.065 to 0.060.** Spots stretch into worms, then mazes. Tiny changes cross a threshold into a different animal. **Tick "Aligned diffusion" on any preset.** Spreading becomes faster sideways, so patterns line up into stripes, the way tiger stripes follow body direction. **Tick "Show raw chemistry."** You see the flat skin map before it's wrapped: green where B lives, blue where A has been consumed. **Dividing cells, then watch for a while.** Spots grow, pinch in half, drift apart and repeat, which looks eerily like life. **The pattern wraps round the sphere.** Rotation slides the map sideways, so markings travel round the back and return. The edges near the poles squeeze, the same distortion as world maps. **Eyes get a thin light rim.** Without it, dark markings merge into the eyes and the face vanishes. Real animals often have light eye patches for the same reason: faces need contrast. **It's slow for a reason.** Patterns take thousands of steps to settle. The speed slider runs up to 30 steps per frame, about 1,800 generations per second. **Leopard rosettes come from two colour thresholds.** Medium B becomes a warm brown ring; high B becomes the dark core. The chemistry is identical; the colour mapping makes the animal. **One cell, one step** ``` A′ = A + D_A·∇²A − A·B² + F·(1 − A) B′ = B + D_B·∇²B + A·B² − (k + F)·B ∇² = neighbours' average − self (sideways weighted more if aligned) ``` **The parameter map (F vs k)** ``` F ↑ coral mazes │ worms · stripes │ spots · dividing cells │ nothing survives └───────────────────────────► k ``` **From flat map to sphere** ``` skin map (160 × 80, wraps sideways) ┌──────────────────────┐ │ • ~ • ~~ • ~ • ~~ • │ ──► longitude/latitude lookup per pixel └──────────────────────┘ + rotation offset + lighting ──► bot skin ``` **Critical thinking:** two numbers decide leopard vs zebra. If biology uses similar switches, how much of an animal's "design" is chosen and how much is physics doing what it must? **Lateral thinking:** fabric dyeing, dune ripples, fingerprints and even city street layouts show reaction-diffusion-like patterns. Could your bot's pattern be a brand identity that's unique to each user, grown from their own seed? **First principles:** why must the inhibitor (A) spread faster than the activator (B) for spots to form? What happens if they spread at the same speed? - How do real animals' patterns relate to Turing's maths?
G. Generative / procedural