Skip to Content
Node LibraryParticles

Particles

GPU particle simulation and rendering. Emit, update with forces, and render thousands of particles in real-time.


Attractor

Transform

Pull particles toward a point in space.

Inputs:

NameTypeDefaultDescription
position3D Vector(0.00, 0.00, 0.00)Target point particles are pulled toward
strengthNumber1.00Pull intensity — negative values repel
falloffNumber2.00Distance exponent — higher = faster falloff

Outputs:

NameTypeDescription
force3D VectorForce contribution for the particle update shader

Attractor

Related: Drag, Draw Particles, Gravity, Particle Age, Particle Age Normalized


Drag

Transform

Apply velocity damping (air resistance) to particles.

Inputs:

NameTypeDefaultDescription
coefficientNumber0.02Damping factor — higher values slow particles faster

Outputs:

NameTypeDescription
force3D VectorForce contribution for the particle update shader

Drag

Related: Attractor, Draw Particles, Gravity, Particle Age, Particle Age Normalized


Draw Particles

Output

GPU particle simulation and rendering. Emit, update physics, and render all in one node.

Inputs:

NameTypeDefaultDescription
cameraTransform MatrixViewport CameraView-projection matrix from a camera node
transform3D Vector / Transform MatrixidentityWorld transform for the emitter position and orientation
spawnRateNumber300.00Number of particles emitted per second
velocity3D Vector(0.00, 1.00, 0.00)Initial velocity direction and magnitude
velocitySpread3D Vector(0.50, 0.50, 0.50)Random spread added to initial velocity per axis
lifeNumber2.00Particle lifespan in seconds before removal
lifeVarianceNumber0.20Random variation added to lifespan
sizeNumber0.10Base particle size in world units
sizeVarianceNumber0.10Random variation added to particle size
forces3D VectornoneForce chain (Gravity, Drag, Turbulence, etc.)
geometryGeometryplanePer-particle mesh (default: billboard quad)
surfaceRGB Color / RGBA Color / 3D Vector / 4D Vector / Visual OutputSoft GradientSurface shader or color for particle appearance
blendOptionAlpha (options: Alpha, Additive, Premultiplied)How particles composite with the scene
emitShapeGeometrypointGeometry mesh defining the emission shape
emitModeOptionSurface (options: Surface, Volume)Emit from surface or fill volume
normalVelocityNumber0.00Velocity along emission shape surface normals
clearColorRGB Color / RGBA Color / 3D Vector / 4D VectorRGBA(0.05, 0.05, 0.05, 1.00)Background clear color

Outputs:

NameTypeDescription
colorResultVisual OutputRendered particle color texture
depthResultVisual OutputRendered particle depth texture

Draw Particles

Related: Attractor, Drag, Gravity, Particle Age, Particle Age Normalized


Gravity

Transform

Apply gravitational acceleration to particles.

Inputs:

NameTypeDefaultDescription
strengthNumber9.80Acceleration magnitude in units/s²
direction3D Vector(0.00, -1.00, 0.00)Normalized direction of gravitational pull

Outputs:

NameTypeDescription
force3D VectorForce contribution for the particle update shader

Gravity

Related: Attractor, Drag, Draw Particles, Particle Age, Particle Age Normalized


Particle Age

Source

Current particle age in seconds. Use for time-based effects.

This is a surface shader node - it can be connected to rendering nodes.

Inputs:

No inputs

Outputs:

NameTypeDescription
resultNumberCurrent age in seconds since emission

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age Normalized


Particle Age Normalized

Source

Particle age as 0-1 (birth to death). Perfect for gradients and fade effects.

This is a surface shader node - it can be connected to rendering nodes.

Inputs:

No inputs

Outputs:

NameTypeDescription
resultNumberAge as 0–1 fraction of total lifespan

Particle Age Normalized

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age


Particle Index

Source

Particle index in buffer. Use with fract/sin for per-particle variation.

This is a surface shader node - it can be connected to rendering nodes.

Inputs:

No inputs

Outputs:

NameTypeDescription
resultNumberParticle’s index in the buffer

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age


Particle Seed

Source

Random 0-1 value per particle. Use for variation in color, size, etc.

This is a surface shader node - it can be connected to rendering nodes.

Inputs:

No inputs

Outputs:

NameTypeDescription
resultNumberDeterministic random 0–1 value unique per particle

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age


Particle Speed

Source

Particle speed (velocity magnitude). Use for speed-based effects.

This is a surface shader node - it can be connected to rendering nodes.

Inputs:

No inputs

Outputs:

NameTypeDescription
resultNumberCurrent speed (velocity magnitude)

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age


Particle Velocity

Source

Current particle velocity vector. Use for motion effects.

This is a surface shader node - it can be connected to rendering nodes.

Inputs:

No inputs

Outputs:

NameTypeDescription
result3D VectorCurrent velocity vector

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age


Turbulence

Transform

Apply noise-based chaotic motion to particles.

Inputs:

NameTypeDefaultDescription
frequencyNumber1.00Noise spatial frequency — higher = finer turbulence
amplitudeNumber1.00Force strength — scales the noise output
speedNumber1.00Noise animation speed — how fast the turbulence evolves

Outputs:

NameTypeDescription
force3D VectorForce contribution for the particle update shader

Turbulence

Related: Attractor, Drag, Draw Particles, Gravity, Particle Age


Last updated on

Apple and the Apple logo are trademarks of Apple Inc. sxp.studio and Subjective Designer are not affiliated with Apple.