Noise Algorithms
| Algorithm | Tags | Key Properties |
|---|---|---|
| Value Noise | 2D3D | Interpolate random values at grid corners. Simple, slight grid artifacts, cheap |
| Gradient (Perlin) Noise | 2D3D | Interpolate dot products of random gradient vectors. Smoother than value noise. Ken Perlin 1983 |
| Simplex Noise | 2D3D | Perlin variant on simplex lattice. Fewer directional artifacts, faster in high dimensions. Perlin 2001 |
| Worley (Cellular) Noise | 2D3D |
Distance to nearest random point. Produces cell/voronoi
pattern. F1, F2-F1,
F2 variants
|
| fBm (Fractal Brownian Motion) | Proc |
Sum noise at multiple frequencies (octaves).
fBm = Σ amplitude * noise(pos * freq)
|
| Domain Warping | Proc | Warp input coordinates by noise before sampling noise. Ingo Quilez technique for organic shapes |
| Blue Noise | 2D | Spectrally uniform distribution — avoids low-frequency clumping. Used in dithering and sampling |
| Curl Noise | 2D3D | Divergence-free velocity field from noise gradient — physically plausible fluid-like flow |
Fractals & Self-Similarity
| Algorithm | Tags | Key Properties |
|---|---|---|
| Mandelbrot Set | 2D |
Escape-time algorithm: iterate z = z² + c.
Infinite detail at boundary
|
| Julia Set | 2D | Same iteration, fixed c parameter per image. Every point of Mandelbrot spawns a Julia set |
| Burning Ship | 2D |
Variant: z = (|Re(z)| + i|Im(z)|)² + c.
Ship-like shape
|
| L-Systems | 2D3D | String-rewriting grammar for branching structures. Plants, fractals, space-filling curves |
| IFS (Iterated Function Systems) | 2D | Barnsley fern: random affine transforms applied repeatedly. Converges to attractor |
| Sierpinski Triangle / Carpet | 2D | Subdivision fractal. Chaos game: random midpoints. Dimension ≈ 1.585 |
| Koch Snowflake / Curve | 2D | Replace each segment middle third with equilateral bump. Perimeter → ∞, area finite |
| Fractal Terrain (Diamond-Square) | 2D3D | Midpoint displacement on height grid. Produces natural-looking mountains |
Cellular & Reaction Systems
| Algorithm | Tags | Key Properties |
|---|---|---|
| Conway's Game of Life | 2DSim | 4 rules on binary grid. B3/S23. Turing complete, gliders, oscillators |
| General Cellular Automata | 2D | Wolfram 1D elementary: 256 rules. 2D generalizations: B/S notation (e.g. B36/S23 = HighLife) |
| Reaction-Diffusion | 2DSim | Gray-Scott model: two chemicals, feed/kill rates control spots, stripes, labyrinths |
| Smoothed Particle CA | 2D | Lenia: continuous Game of Life. Smooth kernel convolution, rich lifelike patterns |
| Turing Morphogenesis | 2D | Activator-inhibitor model for biological patterns (stripes, spots on animal skin). Alan Turing 1952 |
| Belousov-Zhabotinsky | 2DSim | Oscillating chemical reaction. Spiral waves, rotating target patterns |
Spatial Algorithms
| Algorithm | Tags | Key Properties |
|---|---|---|
| Voronoi Diagram | 2D3D | Partition space by nearest seed point. Dual graph = Delaunay triangulation |
| Delaunay Triangulation | 2D | Circumcircle criterion: maximises minimum angles. Bowyer-Watson incremental algorithm |
| Lloyd Relaxation | 2D | Iteratively move Voronoi seeds to centroid of their cell → uniform distribution (blue-noise-like) |
| Poisson Disk Sampling | 2D3D | Minimum distance constraint between points. Bridson fast algorithm: O(N) |
| Space-Filling Curves | 2D | Hilbert curve, Z-order (Morton curve): map 2D to 1D preserving locality |
| Maze Generation | 2D | DFS recursive backtracker, Prim's, Eller's, Wilson's (loop-erased random walk) |
Physics-Based Systems
| Algorithm | Tags | Key Properties |
|---|---|---|
| Boids (Flocking) | 2D3DSim | 3 rules: separation, alignment, cohesion (Craig Reynolds 1987). Emergent murmuration |
| SPH Fluid | 2D3DSim | Particle-based incompressible fluid. Navier-Stokes via kernel interpolation |
| Lattice-Boltzmann (LBM) | 2DSim | Mesoscale fluid: discrete probability distributions on grid. D2Q9, D3Q19 variants |
| Verlet Cloth | 2D3DSim | Distance constraints between particles. Jakobsen position-based dynamics |
| Strange Attractors | 3D | Lorenz, Rössler, Thomas attractors: chaotic ODEs traced as particle paths |
| DLA (Diffusion-Limited Aggregation) | 2D | Random-walking particles stick to cluster. Produces branching fractal (snowflake, coral) |
Shape & Form Algorithms
| Algorithm | Tags | Key Properties |
|---|---|---|
| Signed Distance Functions (SDF) | 2D3D | Shape as distance field. Compose with min/max/smoothstep. Ray marching for rendering |
| Marching Cubes / Squares | 2D3D | Isosurface extraction from scalar field. 256 cases (cubes), 16 cases (squares) |
| Spirographs (Hypotrochoids) | 2D | Parametric: rolling circle inside/outside circle. Ratio of radii controls petal count |
| Chladni Figures | 2D |
Eigenmodes of vibrating plates:
cos(m·x)·cos(n·y) = 0 nodal lines
|
| Supershapes (Superformula) | 2D3D | Gielis superformula with 6 parameters generates flowers, starfish, spirals |
| Lindenmayer Turtle Graphics | 2D | L-system strings interpreted as turtle commands (F=forward, +=turn, [=push) |