Appearance
Procedural Placement Graph
A node-based procedural placement system for Unity. Design scatter workflows visually using a graph editor, then execute to place objects in your scene.
Features
- Visual Graph Editor with real-time preview
- 53 built-in nodes across 10 categories
- Attribute system for per-point metadata (float, int, bool, vector, quaternion, string)
- Spline integration via Unity Splines package
- Terrain support with layer-based density and steepness
- Material property transfer via MaterialPropertyBlock
- Extensible with custom nodes via simple C# interfaces
Quick Start
- Install the package via Unity Package Manager
- Open Window > Procedural Placement Graph > Graph Editor
- Create a graph asset and start adding nodes
- See Getting Started for a step-by-step tutorial
Documentation
User Guide
- Getting Started — Installation and your first graph
- Core Concepts — Points, attributes, and data flow
- Workflows — Common placement patterns
- Preview & Debug — Scene preview, Details window, pin feature
Node Reference
- Generators — Create Points, Create Points Grid, Random Points, Poisson Disk Sampling
- Samplers — Surface Sampler, Mesh Surface Sampler, Terrain Sampler, Terrain Surface Sampler, Texture Sampler, Volume Sampler
- Filters — Density, Steepness, Bounds, Normal, Attribute, Index, Spline, Difference, Union, Intersection
- Point Operations — Transform, Merge, Copy, Distance, Self Pruning, Lloyd Relaxation, and more
- Attributes — Create Attribute, Math Operation, Attribute Remap, Attribute Noise, Attribute to Color/Transform
- Spline — Spline Sampler (OnSpline / OnInterior)
- Instancers — Prefab Instancer, Weighted Instancer, Prefab Graph Instancer
- Flow — Branch, Loop, Sub Graph
- IO — Get Binding, Variables, Graph Input/Output, Data Assets, Reroute
API Reference
- Custom Nodes — Create your own nodes with IPPGElement and PPGSettings
- Runtime API — PPGComponent, Generate, Cleanup, Bindings
- Attribute System — PPGAttributeSelector, Providers, Consumers
Other
- Debug — Debug Points