Particles node

Particle Emitter

Spawns and configures particles within a Particle System. Control spawn rate, burst count, lifetime, size (with start/end), speed, spread angle, color transitions, emissive glow, rotation, gravity, drag, and mass. Outputs death/collision/lifetime events for chaining effects.

Inputs

PortTypeDefault
EnableOff stops this emitter spawning. Particles already alive keep drifting until their lifetime runs out.booltrue
Position XHorizontal spawn point, in Grafit units from the centre. Moving it is also what Inherit Velocity picks up, so a swept emitter throws its particles sideways.float0
Position YVertical spawn point, in Grafit units from the centre. Not clamped; particles can be born well off screen and drift in.float0
Position ZDepth of the spawn point. Positive is nearer the camera and reads as larger.float0
Rotation XTilts the whole spawn shape, in degrees, clockwise. Any value works — it simply wraps every 360.float0
Rotation YTurns the whole spawn shape, in degrees, clockwise. Any value works — it simply wraps every 360.float0
Rotation ZRolls the whole spawn shape, in degrees, clockwise. Any value works — it simply wraps every 360.float0
TriggerCable On Death, On Collision or On Lifetime from another emitter here to spawn at those events. Only used when the connected Spawn node is in Trigger mode; up to 64 events are served per frame.structure—
ShapeCable a Particle Shape node to choose where particles are born — sphere, box, line, image and so on. With nothing connected they all appear at a single point.structure—
VelocityCable a Particle Velocity node to set launch direction, speed and spread. With nothing connected particles fly away from the centre at a modest 0.2.structure—
SpawnCable a Particle Spawn node to set the mode, rate, count, delay and loops. With nothing connected the emitter runs continuously at 100 particles a second.structure—
TypeCable a Particle Type node to choose the look — billboard, stretched, point, trail, sprite, cube or sphere. With nothing connected particles are billboards.structure—
LifetimeHow long a particle lives, in seconds. Held at 0.001 or above, so it can never be zero; long lifetimes plus a high rate is what fills the particle budget.float3
Lifetime VarianceRandom spread on lifetime, in seconds either side. The short end never drops below 0.001, so large values simply make the crowd wildly uneven.float0.5
SizeDiameter of a particle at birth, in Grafit units. It also acts as the collision radius, so bigger particles bounce off surfaces sooner.float0.02
Size VarianceRandom spread on size, in Grafit units either side. The smallest possible particle is held at 0.0001, so it never disappears entirely.float0
Size EndSize at the end of life. 0 means no change at all — any other value ramps smoothly from Size to this, below for shrinking and above for growing.float0
ColorColour at birth, RGBA 0…1. Ignored while a Gradient is connected.color—
Color EndColour at the end of life, RGBA 0…1. Its alpha is the natural fade-out; leave alpha at 0 for particles that dissolve as they die.color—
GradientCable a Gradient node to replace the two-colour ramp with a multi-stop one, sampled at eight points. Only a real cable counts — with none, Color and Color End are used.structure—
Color ModeWhat drives the colour ramp: Over Life, X, Y or Z axis, Radial distance, or Speed. Clamped to 0…5, so anything further falls onto Speed.int0
Color ScaleThe world range the spatial and speed modes spread the ramp across. Held at 0.0001 or above; smaller values repeat the colours faster. Ignored in Over Life mode.float1
OpacityOverall transparency multiplier for this emitter's particles. Clamped to 0…1.float1
Opacity RampCable a Ramp node to shape opacity across a particle's whole life — fade in, hold, fade out. Samples are clamped to 0…1; without one the opacity stays flat.structure—
EmissiveGlow strength pushed past white, which is what Bloom picks up. 0 is off; not clamped, though anything below 0 counts as none.float0
Emissive RampCable a Ramp node to decide when in a particle's life it glows. Emissive stays the peak; the ramp's 0…1 curve scales it.structure—
Rotation Speed XSpin around the X axis, in degrees per second. Any value works; the particle just keeps tumbling.float0
Rotation Speed YSpin around the Y axis, in degrees per second. Any value works; the particle just keeps tumbling.float0
Rotation Speed ZSpin around the Z axis, in degrees per second — the one that reads as flat rolling on a billboard.float0
Rotation Variance XRandom spread around X, in degrees. It scatters both the starting angle and the spin speed, so no two particles turn alike.float0
Rotation Variance YRandom spread around Y, in degrees, applied to both the starting angle and the spin speed.float0
Rotation Variance ZRandom spread around Z, in degrees, applied to both the starting angle and the spin speed.float0
GravityConstant downward pull on this emitter's particles; positive falls, negative floats up. Not clamped, but it accumulates every frame, so 0.1…2 already reads as strong.float0
DragAir resistance that bleeds off speed each frame. Not clamped; useful roughly 0…20, and past about 60 it overshoots and flips the motion instead of slowing it.float0
BouncinessIntended bounce for this emitter's particles. The bounce actually used comes from each Particle Collider's own Bounciness, so this value has no effect on its own.float0.5
Collision SpreadHow far from the exact contact point trigger-spawned particles appear, in Grafit units. Held at 0 or above; 0 puts them all on the contact point.float0
MassReserved. Every particle currently simulates at the same mass, so changing this has no visible effect yet.float1
FlightA Particle Target Flight: this emitter's particles fly its drawn path to the target and die there, so On Death fires at the target. Forces and colliders no longer move them.structure—
SparkleHow often each particle flares up on its own, in flares per minute. 0 is off. Particles flare at random moments, never together; capped at one flare per Sparkle Duration.float0
Sparkle BoostGlow added at the peak of a flare, on top of Emissive. Not clamped above.float6
Sparkle DurationSeconds one flare lasts: a soft rise to its peak, then a slower fade. Not clamped above; below 0.02 counts as 0.02.float1
Sparkle SizeHow far a flare's star glint reaches, in sizes of the particle: a soft halo with four long and four short rays. 0 = no glint, only the glow. Up to 16; drawn on round billboards, not on textured sprites or cubes.float3

Outputs

PortType
On Deathstructure
On Collisionstructure
On Lifetimestructure
Alive Countint
Configstructure

Overview

The Particle Emitter is the primary particle-spawning node within a Particle System. It defines where, how, and with what properties particles are born. Each emitter produces a stream of particles according to its configuration — shape, velocity, spawn rate, lifetime, size, color, physics, and visual type. Multiple emitters can coexist inside a single Particle System to create layered effects.

The Emitter uses a modular connection system: instead of exposing dozens of ports directly, it accepts configuration structures from dedicated helper nodes — Particle Shape, Particle Velocity, Particle Spawn, and Particle Type — via structure input ports. When these are not connected, sensible defaults are used (point shape, radial velocity at 0.2 speed, continuous emission at 100 particles/second, billboard rendering).

The Emitter also drives the trigger system: particles can emit events On Death, On Collision, or On Lifetime, which cascade to other emitters via the Trigger input for chain-reaction effects like fireworks or explosions.

How It Works

Modular Configuration

The Emitter's behavior is configured through four structure input ports, each accepting output from a dedicated helper node:

  1. Shape (from Particle Shape) — Where particles spawn: point, line, circle, sphere, box, cone, rectangle, hemisphere, torus, or cylinder. Each shape supports spawn modes (fill/outline for 2D; volume/surface/edges for 3D).
  1. Velocity (from Particle Velocity) — How particles move initially: away from center, in a specific direction, or randomly. Controls speed, variance, spread angle, and velocity inheritance from emitter movement.
  1. Spawn (from Particle Spawn) — When and how many particles are emitted: continuously at a rate, in bursts with delay and loops, or on external trigger events.
  1. Type (from Particle Type) — How particles look: billboard quads, velocity-stretched sprites, pixel points, SDF circles, trails, 3D cubes with PBR, or 3D spheres with PBR. Each mode has its own blend mode, texture, and material options.

Color and Size Over Life

Particles interpolate from Color to Color End through an 8-stop gradient over their lifetime. The color transition is smooth and continuous. Similarly, if Size End > 0, particles scale from Size to Size End linearly. Custom size-over-life and opacity-over-life curves can be set via the inspector (stored in customStorage).

Trigger System (Cascading Events)

The trigger system enables particle chain reactions:

  1. Enable trigger outputs on the source Emitter via the inspector (Trigger on Death, Trigger on Collision, or Trigger on Lifetime Threshold).
  2. The GPU flags particles for events as they die, collide, or cross the lifetime threshold.
  3. Events are read back asynchronously (one-frame latency) and routed to the Emitter's output ports.
  4. Connect an output (e.g., On Death) to another Emitter's Trigger input.
  5. Set the receiving Emitter's Spawn mode to Trigger (via a Particle Spawn node).
  6. Each event spawns a burst of particles at the event position, inheriting the source particle's velocity.

This allows firework-style effects where one particle's death spawns dozens of child particles, which can in turn trigger further generations.

Emitter Velocity Inheritance

When an emitter moves (Position changes over time), the system tracks its velocity. The Inherit Velocity parameter on the Particle Velocity node controls how much of the emitter's movement velocity is added to newly spawned particles. At 0, particles ignore emitter motion; at 1, particles fully inherit it.

Use Cases

  • Single emitter for simple effects (rain, snow, sparks)
  • Multiple emitters at different positions for complex scenes
  • Cascading emitters using the trigger system for fireworks, explosions, or chain reactions
  • Moving emitters (animate Position) with velocity inheritance for comet trails
  • Emissive particles combined with system bloom for neon glow effects

Tips

  • Connect Shape, Velocity, Spawn, and Type nodes to the Emitter for full control. Without them, you get a basic point emitter with radial velocity.
  • Color End alpha defaults to 0, which makes particles fade out naturally over their lifetime. Set alpha to 1 for particles that remain fully opaque until death.
  • Use Lifetime Variance to prevent all particles from dying at the same time, which looks more natural.
  • Gravity stacks with Particle Field forces. Use the Emitter's Gravity for simple downward pull and Fields for complex force patterns.
  • The trigger system has one-frame latency. For fast chain reactions, keep particle lifetimes short on intermediate emitters.
  • Collision Spread > 0 scatters sub-emitter spawns around the collision point, creating more organic-looking cascading effects.

Open Particle Emitter in the interactive catalog →

Particle Emitter is one of 381 nodes in Grafit Pro.

Free download. Every feature for 7 days, no card. Then €99.99 once — or keep playing your projects as a Player.

More Particles nodes