🎨

Generative Art

Generative art is what happens when a handful of simple rules — a noise function, a recursive grammar, a local update rule repeated across a grid — are left to run and produce something no artist drew by hand. This hub gathers the site's procedural generation simulations into one guided starting point: Perlin noise fields that grow into terrain and flowing brushstrokes, Lindenmayer grammars that sprout into ferns and dragon curves, complex-plane fractals with infinite detail, cellular automata that build order out of a single black cell, and a procedural city generator that lays out an entire skyline from a few numbers.

14+ simulations Canvas 2D · WebGL · Procedural Algorithms

Simulations in this Topic

14 simulations from the Generative Art category

🏔 ★☆☆☆ Easy
Perlin Noise — Procedural Terrain & Texture Generator
Interactive 2D Perlin noise visualiser with fractional Brownian motion (fBm) — generate procedural terrain heightmaps, cloud textures and wood grain by tuning octaves, persistence and lacunarity.
Generative Art
🌊 ★★☆☆ Moderate
Flow Fields
3000 particles trace a Perlin noise vector field that evolves over time — switch Ocean, Van Gogh, Fire and Mono palettes, inspired by Starry Night.
Generative Art
🌀 ★★★☆ Advanced
Domain Warping
Domain warping feeds noise back into its own coordinates — f(p + f(p + f(p))) — turning plain fBm into swirling, marbled, cloud-like fields.
Generative Art
🌿 ★★☆☆ Moderate
L-System Fractals
Generate fractal plants, trees and curves with Lindenmayer grammar rewriting and turtle graphics — Koch Snowflake, Dragon Curve, Sierpinski, Barnsley Fern and more.
Generative Art
🐢 ★☆☆☆ Easy
Turtle Graphics & L-Systems
Explore L-System turtle graphics interactively — Dragon Curve, Koch Snowflake, Sierpiński Triangle, Hilbert Curve, fractal plants, or enter your own custom rules.
Generative Art
★★★☆ Advanced
IFS Fractals — Iterated Function Systems
Explore Iterated Function Systems: Barnsley fern, Sierpinski triangle, Dragon curve and custom affine transforms — watch fractal attractors emerge from chaos.
Generative Art
🌀 ★★☆☆ Moderate
Mandelbrot Set Explorer
Explore the infinite complexity of the Mandelbrot set — click to zoom into any region, tweak colours and max iterations, or jump to famous presets like Seahorse Valley.
Generative Art
🔮 ★☆☆☆ Easy
Julia Set Fractal Explorer
Click the Mandelbrot set to set parameter c, then visualise the corresponding Julia fractal in real time with customisable colour maps and zoom.
Generative Art
🔳 ★★☆☆ Moderate
Rule 30 — Elementary Cellular Automata
Explore Wolfram's elementary cellular automata: choose any rule 0–255 (chaotic 30, Sierpiński 90, universal 110) and watch the space-time triangle build row by row.
Generative Art
🌻 ★★☆☆ Moderate
Phyllotaxis — Sunflower Spirals
Build a sunflower head with Vogel's model: seed n at angle n·137.5° and radius c·√n — only the golden angle packs the spiral arms without gaps.
Generative Art
🎭 ★★☆☆ Moderate
Stippling & Pointillism
Weighted Voronoi stippling via Lloyd's relaxation algorithm — points self-organise into stipple art driven by a density function, with Waves, Spiral and Mandelbrot patterns.
Generative Art
🔶 ★★★☆ Advanced
Voronoi Growth
Crystalline growth patterns from Johnson-Mehl-Avrami nucleation — seeds grow outward into a Voronoi-like mosaic with three distance metrics and Lloyd relaxation.
Generative Art
🌿 ★★☆☆ Moderate
Diffusion-Limited Aggregation
Real-time DLA fractal generator — particles random-walk from a spawn circle until they stick to the growing cluster, producing branching dendrites with fractal dimension D_f ≈ 1.71.
Generative Art
🌃 ★★★☆ Advanced
Generative City
Generate an infinite top-down procedural city — recursive block subdivision lays out roads, zoned parcels fill with extruded buildings, and downtown intensity drives density.
Generative Art

Suggested Learning Path

Six simulations and articles, in the order we recommend exploring them

  1. 1
    1. Perlin Noise

    Start with the noise function nearly every generative artist reaches for first — see how octaves, persistence and lacunarity turn static into terrain, clouds and wood grain.

  2. 2
    2. Flow Fields

    Put that same noise field to work as a vector field and watch 3000 particles trace it into brushstrokes reminiscent of Van Gogh's Starry Night.

  3. 3
    3. Domain Warping

    Feed the noise back into its own coordinates and watch flat fBm turn into swirling, marbled, cloud-like fields — the technique behind most "digital painting" generative art.

  4. 4
    4. L-System Fractals

    Switch from continuous noise to discrete grammar rewriting — a handful of production rules unfolds into ferns, dragon curves and snowflakes.

  5. 5
    5. Mandelbrot Set Explorer

    Move from grammars to the complex plane — zoom into the most famous fractal of all and see genuinely infinite detail render live.

  6. 6
    6. Generative City

    Finish by combining recursive subdivision with procedural rules at city scale — an entire skyline built from a seed number and a handful of parameters.

Related Articles

The theory and maths behind the simulations above

What Is a Fractal? Self-Similarity & Infinite Complexity
Fractals are infinitely detailed patterns that look the same at every scale — self-similarity, the Mandelbrot set, fractal dimension and fractals in nature.
Fractal Geometry — Self-Similarity and the Geometry of Nature
Fractal dimension, the Mandelbrot set, Julia sets, IFS, L-systems, and fractal patterns in nature and science.
Mandelbrot Set Algorithms: Escape Time, Distance Estimation & GPU Rendering
How the escape-time algorithm actually colours the Mandelbrot set, plus distance estimation and GPU rendering techniques for smooth infinite zoom.
L-Systems and Plant Growth — Lindenmayer Grammars and Turtle Graphics
How Lindenmayer's string-rewriting grammars turn a few production rules into ferns, trees and fractal curves via turtle graphics.
Perlin Noise and fBm — Procedural Generation
How Perlin noise and fractional Brownian motion generate coherent randomness for terrain, clouds and textures.
Voronoi Diagrams — Fortune's Sweep Line, Delaunay and Applications
How Voronoi diagrams partition space — Fortune's sweep-line algorithm, dual Delaunay triangulation, Lloyd relaxation and real-world applications.

About the Generative Art Topic

From noise fields to procedural cities — a complete map of the topic

Generative art is art (or texture, or terrain, or a whole city) produced by a system — an algorithm, a set of rules, a random process — rather than drawn stroke by stroke by hand. The artist's job shifts from placing every pixel to designing the rules and then choosing which outputs of the system to keep: tune a parameter, reseed the random number generator, and a genuinely different piece appears. This hub gathers every interactive procedural generation simulation on mysimulator.uk into one guided starting point, so instead of reading about noise functions and grammars in the abstract you can drag a slider and watch the algorithm redraw itself in real time in your browser.

The most widely used building block in generative art is Perlin noise — a smooth, coherent kind of pseudo-randomness invented for the original Tron film to make computer-generated textures look organic instead of static-like. Layering several octaves of Perlin noise at different frequencies (fractional Brownian motion, or fBm) produces the rolling terrain heightmaps, cloud textures and wood-grain patterns behind countless games and digital art pieces. The flow-fields simulation puts that same noise field to work as a vector field, tracing 3000 particles through it to build brushstroke-like patterns reminiscent of Van Gogh's Starry Night, while domain warping takes noise a step further by feeding it back into its own coordinates — f(p + f(p + f(p))) — turning flat noise into the swirling, marbled fields behind most "digital painting" generative art.

A second major family of techniques builds structure through recursive rewriting rather than noise. L-systems (Lindenmayer systems) start from a single symbol and a handful of production rules — replace "F" with "F+F−F−F+F", say — and after a few iterations of rewriting, a turtle-graphics interpreter turns the resulting string into a Koch snowflake, a dragon curve, or a startlingly plant-like fern. Iterated Function Systems (IFS) achieve the same self-similar complexity a different way, applying a small set of affine transformations to a point millions of times until a fractal attractor — the Barnsley fern, the Sierpiński triangle — emerges from what looks at first like scattered noise. The Mandelbrot and Julia set explorers push this idea into the complex plane: iterate z → z² + c and colour each pixel by how quickly it escapes to infinity, and you get a boundary of genuinely infinite detail that keeps revealing new structure no matter how far you zoom in.

A third family generates order from purely local rules applied simultaneously across a grid or a swarm. Rule 30 and the other elementary cellular automata update each cell from its two neighbours according to a fixed lookup table, yet some rules (30 is famously one of them) produce output complex enough that Wolfram has argued it may be genuinely unpredictable — no shortcut exists to know row 10,000 without computing every row before it. Diffusion-limited aggregation and Voronoi growth model physical processes — particles random-walking until they stick to a cluster, crystals nucleating and growing outward — and produce the same branching dendrites and mosaic textures you can find in frost patterns, mineral deposits and bacterial colonies. Phyllotaxis shows the same idea driven by a single "magic" number: place seeds at the golden angle (137.5°) from the centre outward and Fibonacci spiral arms snap into place automatically, exactly as they do in a real sunflower head — no other angle packs seeds as efficiently.

The generative-city simulation and the Voronoi stippling technique combine several of these ideas into complete pipelines: recursive block subdivision lays out roads and zoned parcels the way an L-system lays out branches, then each parcel is filled and extruded procedurally, while weighted Voronoi stippling uses Lloyd's relaxation algorithm to let thousands of points self-organise into pointillist portraits driven by an image's own density function. Follow the learning path below for a suggested order that moves from noise to grammars to complex-plane fractals to a full procedural pipeline, browse the full grid for anything that catches your eye, or jump to the Generative Art category page for the complete list.

What makes these simulations different from a static gallery of generative art is that every one of them is a live algorithm running in your browser, not a pre-rendered image. Change the octave count on the Perlin noise simulation and the terrain genuinely regenerates from different mathematics, not a different picture from a lookup table; change the production rule on the L-system simulation and turtle graphics genuinely re-interpret a different string. That distinction matters for anyone who wants to actually learn how the algorithm works rather than just admire a finished piece — because tuning the parameter and watching the output change is the fastest way to build real intuition for coherent noise, recursive grammars and local update rules alike.

Frequently Asked Questions

Common questions about generative art and procedural generation

What is generative art?
Generative art is art created, in whole or in part, by an autonomous system — an algorithm, a set of rules, or a random process — rather than drawn stroke by stroke by hand. The artist designs the rules and parameters, then runs the system and selects or refines the results; reseeding the random number generator or tuning a single slider can produce a genuinely different piece.
What is Perlin noise and why is it used everywhere in procedural generation?
Perlin noise is a smooth, coherent form of pseudo-randomness — unlike pure random numbers, nearby points produce nearby values, so it looks organic rather than like static. Layering several frequencies (fractional Brownian motion) produces realistic terrain heightmaps, clouds and textures, which is why it underlies so much of procedural generation in games and digital art.
How do L-systems turn a few rules into a realistic-looking fern or tree?
An L-system starts with one symbol and a small set of production rules that replace each symbol with a longer string every iteration. After enough iterations the resulting string is interpreted by a "turtle" that moves forward, turns, and branches according to each character — the same simple substitution repeated recursively is what produces plant-like branching structures.
Why does the Mandelbrot set have infinite detail?
The Mandelbrot set is defined by iterating z → z² + c for every point c in the complex plane and testing whether the result stays bounded. Its boundary is a fractal — no matter how far you zoom into any point on that boundary, you keep finding new structure (including tiny copies of the whole set), because the escape-time test is sensitive to arbitrarily small changes in c.

Other Topic Hubs

Every simulation in this hub runs entirely in your browser, with no installation required. Use each interactive model to experiment with noise fields, fractal grammars, cellular automata and procedural pipelines, then learn generative art and procedural generation online at your own pace by tweaking parameters and watching the algorithm redraw itself.