Spawn

Spawn entities from any source geometry at a controlled rate and track the age of each one.

What it does

Spawn creates new entities, particles, from any source and keeps them alive over time. Each cook it ages existing entities, spawns new ones at a rate or in a one-shot burst, and removes any whose age has passed their lifetime. Inside a feedback loop, the loop holds the entity pool's persistent memory across frames. With entities unwired, Spawn keeps its own pool internally, so a bare Spawn still emits and evolves a stream.

New entities take initial velocity, size, and colour from Spawn's own parameters, or inherit colour, normal, and scale from the source points when Inherit Source Attributes is on. Gravity and damping integrate into velocity every frame, so points wired into Spawn can already read as a small fountain or a puff of dust with no other nodes.

When to use it

ParameterTypeDefault
entitiesOneOf([Collection])
sourceOneOf([Collection, Field, FieldOf(Color), Vec3])
rateNumber10
burstOneOf([Number, Boolean])
enableOneOf([Number, Boolean])
per_source_countNumber0
lifetimeNumber2
velocityVec3(0, 1, 0)
velocity_randomnessNumber0
gravityVec3(0, 0, 0)
dampingNumber0
massNumber1
lifetime_varianceNumber0
sizeNumber1
colorColorrgba(1.00, 1.00, 1.00, 1.00)
inherit_source_attributesBooleantrue
auto_ageBooleantrue
max_entitiesNumber0
seedNumber0
candidate_countNumber4096
bounds_minVec3(-1, -1, -1)
bounds_maxVec3(1, 1, 1)
opacityNumber1

Gotchas

Per Source Count overrides Rate and Burst entirely once above 0, and works with Points or an explicit list of positions only. On any other source it is ignored and Spawn falls back to Rate/Burst.

Burst left unwired gives an initial pop of particles the moment a source is connected, even on a paused or static frame. Wiring Burst replaces that default pop: a switch re-triggers the pop, a number sets the exact count.

Enable pauses the continuous Rate stream without touching Burst, for emitting only while a condition is true without losing one-shot bursts.

When the source is a field of values rather than points, a shape, or geometry, Spawn switches to a one-shot mode: particles are re-jittered inside the Bounds Min/Max box every frame and their properties read from the field. There is no ageing or death in this mode, and Lifetime, Auto Age, and the Died output do not apply.

Worked example

  1. Add a Scatter (or any point source) and wire it into Spawn's source.

  2. Raise Rate for a denser stream, or set Burst for an immediate one-shot pop of particles.

  3. Adjust Velocity and Velocity Randomness to shape the spread, and dial in Gravity so particles arc and fall.

  4. For persistent, ageing entities, drop Spawn between a Feedback Start and Feedback End and wire the loop's carried collection into entities.

See also

Stamp · Feedback Start · Scatter · Collections