Creative Technology Lab
Home ↗ Contact Instagram YouTube
Reaction-Diffusion Playground

HAS BioMorph

A real-time reaction-diffusion simulator with a node-based visual editor. Paint organic patterns, sculpt emergent textures, and export production-ready assets — all in the browser.

Gray-Scott Model Node Graph Canvas 2D Web Audio API SVG Export
Year 2026
Type Web App
Presets 34
Brush Types 8
Export Formats 5
HAS BioMorph / Reaction-Diffusion Playground HAS Studio — 2026
001 The Science

Reaction-diffusion is a mathematical model first proposed by Alan Turing in 1952 to explain how patterns form in nature — from the stripes on a zebra to the branching of coral reefs.

The system simulates two virtual chemicals: A (the substrate) and B (the catalyst). Chemical A is consumed when B is present, while B reproduces and slowly decays. Both chemicals diffuse across the grid at different rates, creating the emergent patterns you see.

The magic happens at the boundary between order and chaos. Tiny changes in feed and kill rates produce wildly different results — spots, stripes, spirals, mazes, and dynamic self-replicating structures that mirror biology itself.

Gray-Scott Model Equations
∂A/∂t = D⅊ ∇² A A + f (1 − A )
∂B/∂t = D_b ∇² B + A − ( k + f )B
002 Parameters
01
Feed Rate (f)
Controls how fast chemical A is replenished. Higher values push the system toward dissolution; lower values starve growth. The primary driver of pattern type. Range: 0.01 – 0.10
02
Kill Rate (k)
Determines how quickly chemical B decays. Together with Feed, this parameter defines the pattern regime — spots, stripes, spirals, or chaos. Range: 0.04 – 0.07
03
Diffusion A (D⅊)
How fast the substrate spreads across the grid. Defaults to 1.0. Substrate typically diffuses faster than catalyst, creating the instability needed for pattern formation. Range: 0.0 – 1.0
04
Diffusion B (D_b)
How fast the catalyst spreads. Defaults to 0.5. The ratio between D⅊ and D_b generates the Turing instability — the secret ingredient behind all emergent patterns. Range: 0.0 – 1.0
05
Simulation Speed
Number of computation steps per animation frame (1–20). More steps means faster evolution but heavier CPU load. Find the sweet spot for your machine.
06
Brush Size
Radius of the painting tool in simulation pixels (1–100). Larger brushes seed wider areas of chemical B. Multiple brush shapes available: circle, square, diamond, spray, perlin.
07
Contrast
Post-processing multiplier (0.5–5.0). Controls how simulation data maps to pixel brightness. Higher values create sharper patterns with deeper blacks and brighter whites.
003 Node System
HAS BioMorph uses a visual node graph to control the simulation. Instead of hidden sliders, every parameter is a visible, connectable port. Right-click anywhere to spawn nodes, drag wires between ports, and watch the simulation respond in real-time. Outputs flow from left to right. Amber ports send signals. Green ports receive them. The Master node consumes all incoming values and applies them to the running simulation.
Master Out
The central hub. Has 7 input ports (Feed, Kill, Diff A, Diff B, Speed, Brush Size, Contrast), brush shape selector, seamless/flux toggles, and export buttons.
Value Slider
A normalized 0–1 slider with a single output port. Values are automatically remapped to the target parameter's range when connected.
Pattern Preset
Dropdown selector with 34 curated presets. Outputs Feed and Kill values simultaneously through two separate ports.
LFO Oscillator
Generates a smooth waveform (sine, triangle, saw, square) at configurable frequency. Drive parameters for evolving, breathing patterns.
Audio Input
Captures microphone or system audio via Web Audio API. Outputs amplitude, frequency bands, and beat detection signals for audio-reactive patterns.
Orientation Map
Modulates diffusion direction across the grid using a painted vector field, creating anisotropic flow patterns.
Node Graph — Signal Flow
PRESET PATTERN Feed Kill VALUE PARAM Val 0.5000 Signal MASTER OUT Feed Kill Diff A Speed Diff B Brush Contrast OUTPUT INPUT UNCONNECTED
004 Presets
34 curated pattern regimes organized across five categories. Each preset is a specific combination of Feed and Kill rates that produces a distinct pattern family.
Classic Patterns
01
Coral Growth
f: 0.0545 k: 0.0620
02
Mitosis
f: 0.0367 k: 0.0640
03
Maze
f: 0.0290 k: 0.0570
04
Chaos
f: 0.0260 k: 0.0510
05
Pockets
f: 0.0780 k: 0.0610
06
Worms
f: 0.0500 k: 0.0650
07
U-Skate
f: 0.0620 k: 0.0610
08
Spots & Loops
f: 0.0180 k: 0.0510
09
Moving Spots
f: 0.0140 k: 0.0540
10
Fingerprints
f: 0.0540 k: 0.0620
11
Waves
f: 0.0250 k: 0.0600
12
Warring
f: 0.0220 k: 0.0590
13
Solitons
f: 0.0300 k: 0.0620
14
Negaton
f: 0.0460 k: 0.0630
15
Turing Patterns
f: 0.0420 k: 0.0590
Organic / Biological
16
Cell Division
f: 0.0340 k: 0.0630
17
Bacteria
f: 0.0250 k: 0.0580
18
Neurons
f: 0.0220 k: 0.0520
19
Zebra Stripes
f: 0.0350 k: 0.0570
20
Leopard Spots
f: 0.0380 k: 0.0610
21
Sea Shells
f: 0.0390 k: 0.0580
Dynamic / Unstable
22
Pulse
f: 0.0150 k: 0.0450
23
Exploding
f: 0.0180 k: 0.0550
24
Spirals
f: 0.0140 k: 0.0430
25
Oscillator
f: 0.0120 k: 0.0470
26
Breathing
f: 0.0210 k: 0.0490
Fine Textures
27
Fine Dots
f: 0.0900 k: 0.0590
28
Honeycomb
f: 0.0340 k: 0.0560
29
Lace
f: 0.0620 k: 0.0630
30
Ripples
f: 0.0200 k: 0.0460
31
Foam
f: 0.0460 k: 0.0640
Edge of Chaos
32
Dissolving
f: 0.0550 k: 0.0640
33
Fading
f: 0.0480 k: 0.0650
34
Gliders
f: 0.0140 k: 0.0530
35
Spiky
f: 0.0580 k: 0.0650
005 Brush Tools
Click and drag on the simulation canvas to seed chemical B. Different brush shapes produce different initial conditions, letting you control the geometry of emergence.
Circle
Smooth circular seed. Default for organic growth.
Square
Hard-edged rectangular seed for geometric patterns.
Diamond
Manhattan-distance mask for angular formations.
Spray
Random scatter within radius for diffused seeding.
~
Perlin
Noise-masked brush for natural, irregular shapes.
Voronoi
Cellular noise mask for structured organic seeds.
×
Eraser
Removes chemical B to carve into existing patterns.
Perlin Eraser
Noise-masked eraser for organic subtraction.
006 Features
Real-Time Simulation
Gray-Scott model running at full framerate with configurable steps-per-frame. Watch patterns emerge and evolve in real time as you adjust parameters.
Node Graph Editor
Visual programming interface for connecting parameter sources to the simulation. Drag wires between ports, spawn nodes from a context menu, and build complex signal chains.
Seamless Tiling
Toggle seamless edge wrapping for perfectly tileable textures. Ideal for creating repeating patterns for materials, wallpapers, and game textures.
Flux Mode
Feed and Kill parameters oscillate over time, creating breathing, evolving patterns that never settle into a static state.
SVG Vector Export
Marching-squares contour extraction with path simplification and smoothing. Export clean vector outlines from your simulation for use in design tools.
Video Recording
Built-in 60fps capture using MediaRecorder API. WebM or MP4 output. Record evolving patterns for motion graphics and social content.
Image Seeding
Upload any image as initial conditions. Grow patterns from photographs, logos, or sketches — the simulation fills in the organic detail.
Audio-Reactive Patterns
Audio Input node captures microphone or system audio. Output amplitude, frequency bands, and beat detection signals to drive parameters for sound-reactive visuals.
Hi-Res Export
Export at 2K, 4K, or 8K resolution with nearest-neighbor upscaling. Production-ready output for large-format printing and high-DPI displays.
Zen Mode
Press H to hide all UI for immersive fullscreen viewing. Perfect for live installations, meditation screens, and ambient displays.
007 Export Pipeline
From screen to production. Five export formats cover every use case — from web graphics to large-format prints to motion design.
2K
PNG — 2× Upscale
4K
PNG — 4× Upscale
8K
PNG — 8× Upscale
<svg>
Vector — ∞ Resolution
REC
Video — 60fps Capture
008 Use Cases
Generative Art & Prints
Create one-of-a-kind organic textures for gallery prints or album artwork. Export at 8K for large-format printing.
3D Texture Design
Generate seamless tileable textures for 3D surfaces in Cinema 4D, Blender, or Unity. Use as displacement or bump maps.
Motion Graphics & VJ
Record evolving patterns as video loops for motion design, stage visuals, or live performance backdrops.
Scientific Visualization
Explore pattern formation in biological systems. Visualize Turing instabilities and self-organization in real time.
Brand & Identity
Seed logos as initial conditions, then let the simulation transform them into unique organic brand elements.
Interactive Installations
Runs entirely in the browser with zero dependencies. Embed in exhibits or museum kiosks for interactive science displays.
Game Assets
Produce organic terrain maps, cave systems, and procedural textures for game environments and world building.
Creative Coding
Visual sandbox for exploring parameters before implementing in shaders or WebGPU compute pipelines.
009 Controls
H
Toggle UI
Enter Zen mode — hide all interface elements for immersive fullscreen viewing.
Del
Delete Node
Remove the currently selected node from the graph.
RMB
Context Menu
Right-click to open the spawn menu and add new nodes to the graph.
LMB
Paint
Left-click and drag on the simulation canvas to seed chemical B.
Drag
Move & Wire
Drag nodes to reposition them. Drag from a port to create a wire connection.
DblClk
Delete Wire
Double-click on a wire to disconnect it from the graph.
Explore it