Aller au contenu

pSpawn Node

By Kriss Norde

pSpawn lets existing particles emit new particles - cascading creation. The source particle keeps living, and the spawned particles become wholly independent. Key uses: bursting fireworks, rocket trails, multi-level explosions. Watch performance: it can grow exponentially.

Overview

pSpawn turns a simple particle into a secondary emitter. Each particle of the input stream can generate its own N particles, which become autonomous particles added to the system.

It is the node behind "fireworks" effects: a particle rises (the rocket), then through pSpawn it bursts into N particles (the sparks). Classic chain emission in VFX.

Where to find this node

  • Effects Library: Tools > Particles > pSpawn
  • Quick add: right-click in the Node Editor → Add Tool > Particles > pSpawn

Inputs

  • Particle Input (orange) - the stream of "parent" particles that will spawn.
  • Style Bitmap - optional. A 2D image (256×256 recommended) used as the texture for the spawned particles.
  • Region Input - optional. A 2D bitmap or 3D mesh to restrict spawning to a specific area.

Setup

Fireworks:
pEmitter (rocket, Velocity Y +0.1) → pSpawn (Number 20, at Start Age 0.8)
                                  → pRender
(the rocket rises and bursts into 20 sparks at 80% of its age)

Continuous rocket trail:
pEmitter (missile, short Lifespan) → pSpawn (Number 2 per frame)
                                   → pRender
(a smoke trail coming out behind the missile)

Multi-level cascades (risky):
pEmitter → pSpawn (Number 5, Affect Spawned = ON) → pRender
(each spawn can itself spawn → an exponential particle explosion)

Key parameters

Number (particles generated per source particle)
Number of particles spawned by each source particle, per frame.
Velocity Transfer (default: 1.0 - 100%)
Percentage of the source particle's velocity passed on to the spawns. 1.0 = the spawns inherit all the velocity. 0.0 = spawns at rest, with only their own velocity. 0.5 = half inheritance, natural.
Affect Spawned Particles (default: off - recommended)
When on, spawned particles can spawn in turn. WARNING: an exponential cascade, render times can explode. Use it sparingly.
Start / End Age
Age range of the source particle during which it spawns. E.g. Start 0.9, End 1.0 = spawning only at the end of its life (classic fireworks bursting when the rocket dies).
Probability
Probability that each source particle spawns. 1.0 = all of them, 0.1 = 10% spawn.
Style tab
Look of the spawned particles (like a secondary pEmitter). It can be radically different from the source stream.
Velocity
The spawned particles' own velocity (added to the inheritance if Velocity Transfer > 0).
Lifespan
Lifetime of the spawned particles, independent of the parent.

Performance warning: exponential explosion

pSpawn can blow up the computation load very quickly. Example: a pEmitter with 100 particles + pSpawn Number 20 per frame =

  • Frame 1: 100 particles, N of which start spawning.
  • Frame 10: could reach 5,000+ particles.
  • With Affect Spawned on: spawns that spawn spawns that spawn = an exponential explosion.

Safety rules:

  • Leave Affect Spawned = OFF by default.
  • Use Start/End Age to spawn only at the end of life (a single burst, not continuous).
  • Probability < 1.0 for partial spawning.
  • Combine with pKill downstream to limit the total number alive.

Use cases

  • Fireworks - a single rising rocket particle, pSpawn Start Age 0.9 (burst at the end of its life) = N sparks flying out radially.
  • Rocket trail - a missile with pSpawn Number 2 per frame = a continuous trail of smoke/particles coming out behind it.
  • Rocket sparks - a main particle (flame) + pSpawn with a spark Style Bitmap = a rocket leaving sparks behind.
  • Fire tendrils - fire particles + pSpawn with Affect Spawned ON (careful!) + a low Number = organic branching.
  • Falling dust - a falling meteorite + pSpawn with gravity applied to the spawns = a trail falling back behind the object.
  • Multi-stage explosion - a first explosion + pSpawn on the debris with Start Age 0.5 = secondary explosions on some of the main debris.

Tips

  • Affect Spawned OFF by default - only turn it on with a real understanding of the performance consequences.
  • Start Age 0.9 for an end-of-life burst - the classic fireworks pattern. The rocket lives its lifespan and bursts just before dying.
  • Velocity Transfer 0.3-0.5 for a natural look - the spawns inherit part of the parent's velocity + have their own velocity. 1.0 = spawns moving exactly like the parent (less believable).
  • A short Lifespan for spawns - spawns do not need to live long. A short Lifespan = a limited load.
  • pKill downstream for mandatory cleanup - keeps the total number of live particles within a reasonable limit.
  • Monitor the particle count - the Fusion interface can display the count. If it explodes, revisit the parameters immediately.
  • For truly complex simulations (an explosion with debris that explodes in turn), consider Houdini, which handles this natively with fine control.