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

#37 Reaction-diffusion

Share: /e/grokbot-animation/37/