ReactionDiffusion
A living Gray-Scott reaction-diffusion pattern that fills the layer and blooms wherever you drag the cursor
Props
preset
Named Gray-Scott regime — drives the feed & kill rates for a whole family of patterns. Choose Custom to dial feed & kill by hand
- Type
- "coral" | "mitosis" | "spots" | "maze" | "worms" | "fingerprints" | "holes" | "solitons" | "bubbles" | "waves" | "flowers" | "custom"
- Default
- coral
feed
Feed rate — how fast chemical U is replenished (used when Pattern = Custom)
- Type
- number
- Default
- 0.0545
kill
Kill rate — how fast chemical V is removed (used when Pattern = Custom)
- Type
- number
- Default
- 0.062
diffusionRatio
Ratio of the two chemicals' diffusion rates — shifts the pattern character (lower = tighter, more filament-like)
- Type
- number
- Default
- 0.5
featureSize
Size of the pattern features — lower shows finer, smaller cells; higher magnifies them into larger cells
- Type
- number
- Default
- 3
speed
Simulation steps per frame — higher evolves the pattern faster
- Type
- number
- Default
- 6
brushSize
Radius of the cursor brush that seeds new reagent as you drag
- Type
- number
- Default
- 0.04
brushStrength
How much reagent the cursor injects while dragging
- Type
- number
- Default
- 0.6
colorA
Background color (empty regions between cells)
- Type
- string
- Default
- transparent
colorC
Accent color at the cell walls (mid pattern values)
- Type
- string
- Default
- #38bdf8
colorB
Color of the dense cell interiors (high pattern values)
- Type
- string
- Default
- #e2f5ff
contrast
Sharpness of the cell walls — higher gives crisper, more graphic edges
- Type
- number
- Default
- 0.5
threshold
Pattern level the colors are centered on — shifts the balance of background vs. cells
- Type
- number
- Default
- 0.28
colorSpace
Color space for color interpolation
- Type
- "linear" | "oklch" | "oklab" | "hsl" | "hsv" | "lch"
- Default
- oklch
relief
Treats the pattern as a raised surface and shades it with a light — higher gives a more sculpted, three-dimensional look (0 for a flat, graphic look)
- Type
- number
- Default
- 0.4
lightAngle
Direction the surface light comes from, in degrees
- Type
- number
- Default
- 135
childInfluence
When a child layer is nested, how strongly its brightness biases the pattern — the preset sets the character, the child steers where it grows dense vs. sparse (0 ignores the child)
- Type
- number
- Default
- 0.6
childContrast
Contrast applied to the child's brightness before it drives the pattern — higher pushes toward a crisp two-tone split (edges), lower keeps smooth tonal shading
- Type
- number
- Default
- 0.5
childThreshold
Brightness level of the child that reads as neutral — shifts which tones grow the pattern vs. clear it
- Type
- number
- Default
- 0.5
childInvert
Flip which tones of the child grow the pattern (bright vs. dark areas)
- Type
- boolean
- Default
- false