Skip to content
CoreSource checked

Poisson Disk Object Placement

Places objects with a minimum spacing so distributions look natural but not clumped.

Quick Facts

Compact metadata for implementation and discovery.

Category
Procedural Generation
Difficulty
Intermediate
Family
Spatial Distribution
Tier
Core
Status
Verified
Review
Source Checked
Sources
1
Formulas
1
Relationships
3
Code example
Ready
Visualization
Ready

Overview

Poisson disk object placement uses distance constraints to scatter objects across a domain while avoiding overlaps or dense clusters.

Core Concepts

minimum distancespatial gridcandidate sampleblue-noise spacing

Quick facts

Complexity

Runtime and memory behavior at a glance.

Best

O(n)

Average

O(n)

Worst

O(n^2)

Space

O(n)

When to Use

  • Use when generating terrain needs minimum distance.
  • Use when the input matches the assumptions behind spatial Distribution.

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

  • Places objects with a minimum spacing so distributions look natural but not clumped
  • Uses minimum distance and spatial grid 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)

Minimum distance rule

distance(samplei, samplej) ≥ r
distance(sample_i, sample_j) >= r

Accepts samples only if they are far enough from existing samples.

Pseudocode

  1. 1.Initialize the seed, grid, rule set, or generator state
  2. 2.Choose the next cell, feature, or parameter to update
  3. 3.Apply constraints, noise, or stochastic choices
  4. 4.Repeat until the generated structure satisfies the stopping rule

Canonical Example

Input
seed = 7 with a small tile set, rule set, terrain grid, or generation parameter
Output
Generated map, texture, layout, or pattern
Explanation
Poisson Disk Object Placement applies minimum distance to produce generated map, texture, layout, or pattern.

Implementation Notes

  • Keep the seed and parameters stored with generated output for reproducibility.
  • Keep the minimum distance step separate enough to test independently.
  • Store seed, parameters, and validation results with generated output so artifacts can be reproduced.

Common Pitfalls

  • Small parameter changes can create large visual or structural differences.
  • Test edge cases, not only clean examples.
  • Changing a seed or constraint weight can create artifacts that are hard to reproduce without recorded parameters.

Interactive Mechanism Walkthrough

Spatial Primitive & Sweep-Line Canvas

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

Poisson Disk Object Placement mechanism walkthrough step 1 of 4
Step 1 of 4: Initialize the seed, grid, rule set, or generator state
procedural-generation-mechanism

Notes

Poisson Disk Object Placement should be used with the assumptions and tradeoffs of spatial Distribution in mind.

Sources (1)

What each reference supports for this entry.

Bridson Poisson Disk Sampling

Paper

Reference for fast Poisson disk sampling used for blue-noise object placement.

Open source

Explore Next

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

Object placement uses Poisson disk sampling to keep points well separated.

Alternative toStratified Sampling

Both distribute samples with coverage constraints.

Tags

Procedural GenerationSpatial SamplingPoisson DiskSampling