Notch Notch Manual 0.9.23
 Light | Dark
Particle Root

Particle Root

The root node for a Particle system.

Method #

This node is the root and container for every particle system. Particle Emitters, Particle Affectors and Particle Rendering Nodes must be parented to this node directly or indirectly in order to be operational. The node contains a number of controls that are globally effective across the system.

The simulation of particle systems has some inherent randomness and variation, in part because of random seed values used to vary behaviour over time, and in part because of operational orders of processing on the PC hardware. This means that a simulation run multiple times or on multiple PCs at once may result in slightly different positions as a result. While this is often acceptable, in some cases it is desirable for simulations to be deterministic when played by multiple servers simultaneously - for example when the same particle system is output to multiple overlapping projectors by multiple servers. The “Deterministic” parameter is used to force particle simulations to behave in a deterministic manner by locking random seeds and reordering processing so it occurs in the same order every time, at the cost of some performance overhead. In order to achieve a deterministic result it is also necessary to ensure the simulation is updated at an identical frame rate and time on every server, so make sure the scene is optimised and built around a reliable locked frame rate.

In general simulations are intended to be frame rate independent. The same simulation run multiple times at differing frame rates should result in particles that are at approximately the same positions in space; the results should be visually similar. However some simulations are inherently highly dependent on update rate, e.g. where fluid solvers such as SPH are used. Where deterministic behaviour for such a system is necessary so that exactly the same results are achieved every time, the Fixed Update parameters may be used to lock or restrict the frame rate at which the system is updated. This is typically desirable for projects that are to be rendered to video.

Parameters

These properties control the core behaviours of the node.

ParameterDetails
Num ParticlesThe maximum number of particles capable of being generated for the particle system. Higher values will consume more memory, can decrease performance even if not all the particles are in active use.
Pre-roll TimePre-run the particle system for a number of frames in seconds. Useful for prepping the particles before running an effect.
Emission Update ActiveControls whether any emitters in the system are allowed to emit new particles.
Physics Velocity DampeningDampens the velocities created by physics based effectors such as Force Affector or SPH across multiple frames.
Fixed Update Rate EnabledForce the particle system to update at a constant rate.
Fixed Update FramerateThe frame rate the particle system is forced to play at.
Fixed Update ModeControls how the fixed update rate is used, if the actual frame update rate is faster than the fixed particle update rate.
  • Lock Update Delta : steps particles between fixed update frames
  • Interpolate : interpolates particles between fixed update frames.
Shading SmoothingSmooths the colours generated by Particle Shading nodes across multiple frames.
Motion SmoothingSmooths the directions of motion of particles in the system across multiple frames.
Terminal VelocityThe maximum velocity allowed for particles.
Master Size ScaleScales the size of all the particles in the system.
Master Alpha ScaleScales the alpha value of all the particles in the system.
Master Brightness ScaleScales the brightness of all the particles in the system.
DeterministicMake simulations deterministic as long as other conditions are met.
Show MetricsDisplays metrics, describing the particle count max, the particle count active, and the average particle count.

Inputs

NameDescriptionTypical Input
Transform ModifiersApply the transforms of another node to this node.Null
Target NodeModifiy the rotations of the node to always direct the z axis towards the input.Null
Local Transform OverrideApply the transforms of another node to this node, relative to its parent.Null

Related Videos