Skip to content
ExtendedSource checked

Diffusion-Limited Aggregation

Generates branching clusters by letting random walkers stick to an existing structure.

Quick Facts

Compact metadata for implementation and discovery.

Category
Procedural Generation
Difficulty
Intermediate
Family
Growth Model
Tier
Extended
Status
Verified
Review
Source Checked
Sources
2
Formulas
1
Relationships
1
Code example
Ready
Visualization
Ready

Overview

Diffusion-limited aggregation repeatedly releases walkers that wander until they touch the cluster, producing organic branching forms.

Core Concepts

random walksticking rulecluster growthbranching pattern

Quick facts

Complexity

Runtime and memory behavior at a glance.

Best

O(walkers)

Average

O(walkers * steps)

Worst

O(walkers * steps)

Space

O(grid)

When to Use

  • Use when generating terrain needs random walk.
  • Use when the input matches the assumptions behind growth Model.

When Not to Use

  • Avoid when the design needs strict authored control over every generated detail.
  • Avoid when a simpler algorithm gives the required result with less setup.

What It Does

  • Generates branching clusters by letting random walkers stick to an existing structure
  • Uses random walk and sticking rule to guide the work.
  • Produces generated map, texture, layout, or pattern.

Use Cases

  • Generating terrain
  • Creating textures
  • Building levels or natural patterns

Inputs

  • Seed
  • Generation parameters
  • Constraint rules

Outputs

  • Generated map, texture, layout, or pattern

Key Formulas (1)

Stick rule

attach walker if neighbor is occupied
attach walker if neighbor is occupied

Adds a particle to the cluster once it touches existing growth.

Pseudocode

  1. 1.Prepare the inputs and state needed for Diffusion-Limited Aggregation.
  2. 2.Apply the random walk step while the stopping condition has not been met.
  3. 3.Update intermediate state and discard invalid candidates.
  4. 4.Return generated map, texture, layout, or pattern.

Canonical Example

Input
Diffusion-Limited Aggregation input with a small representative case
Output
Generated map, texture, layout, or pattern
Explanation
Diffusion-Limited Aggregation applies random walk to produce generated map, texture, layout, or pattern.

Implementation Notes

  • Keep the seed and parameters stored with generated output for reproducibility.
  • Keep the random walk step separate enough to test independently.

Common Pitfalls

  • Small parameter changes can create large visual or structural differences.
  • Forgetting to check edge cases can make Diffusion-Limited Aggregation look correct on only ideal inputs.

Interactive Mechanism Walkthrough

Spatial Primitive & Sweep-Line Canvas

Show the generation state evolving from seed values to the final artifact.

Diffusion-Limited Aggregation mechanism walkthrough step 1 of 4
Step 1 of 4: Prepare the inputs and state needed for Diffusion-Limited Aggregation.
procedural-generation-mechanism

Notes

Diffusion-Limited Aggregation should be used with the assumptions and tradeoffs of growth Model in mind.

Sources (2)

What each reference supports for this entry.

Diffusion-Limited Aggregation

Paper

Original DLA reference for random-walk particle aggregation and branching clusters.

Open source

Procedural Content Generation in Games

Book

Procedural-generation reference supporting Diffusion-Limited Aggregation constraint solving, constructive generation, terrain, dungeon, or stochastic content workflow.

Open source

Explore Next

Good next jumps from the relationship graph, ranked for useful discovery.

Diffusion-limited aggregation grows clusters from random walks that stick to existing particles.

Tags

Procedural GenerationGrowth ModelRandom WalkParticles