Particles

Spawn clouds of points — dust, sparks, debris, sand, snow — and let forces, age, and collisions carry them.

Particles are the simplest and most flexible simulation in DNA. You feed in a set of points, and the simulation.particle node moves them every frame under gravity, force fields, and (optionally) collisions with each other. Because particles are just points, they're cheap to make millions of and easy to dress up afterwards — as sprites, impostors, or instanced geometry.

Emitting particles

Particles start as points. Anything that makes points can feed the sim — a sop.scatter spreading points over a surface, an imported point cloud, or a primitive's vertices. Wire those points into the Particle Sim node and they become the live particle set.

To emit continuously over time, drive your point source so it adds new points each frame, then carry the simulation across frames in a feedback loop (see Loops & feedback). DNA keeps the solver state alive between frames automatically, so particles persist, accumulate, and age rather than restarting every cook.

Each particle carries attributes you can read and animate — including its age, velocity, and position. Use these in an Expression to fade, colour, or scale particles over their lifetime. See Attributes.

Forces and motion

On its own, the Particle Sim applies gravity and integrates motion. To push particles around, wire in a simulation.force_field:

Each force has a falloff (none, linear, quadratic, or smooth) so its influence can fade with distance. Forces stack, so you can combine wind plus turbulence plus a gentle vortex for organic movement. See Forces & collisions.

You can also drive particles with a field — for example, a vector volume baked from curl noise — which acts as a spatially varying wind. See Fields & sampling.

Self-collision: dust vs sand

The Particle Sim has one defining switch — self-collision — that changes its whole character:

Self-collision is on by default, so a fresh Particle Sim behaves like sand. Turn it off for free-flowing dust and spark effects.

Particles also collide with colliders in the scene — a Physics Collider surface, a ground plane, or a Distance Field volume used as a collision boundary — so your sand can pour onto geometry and your sparks can bounce off walls.

ParameterTypeDefault
inputOneOf([CollectionOf(Points), CollectionOf(Geometry)])
self_collisionBooleantrue
particle_radiusNumber0.050
frictionNumber0.500
restitutionNumber0.300
cohesionNumber0
dampingNumber0.010
strengthNumber1

Rendering particles

Particles are points, so by default you'll see them as dots. To give them substance, dress them after the sim:

See Sprites, impostors & billboards and Rasterizing for the full picture.

See also