Method

This node simulates collisions between particles and a 3D object. It uses signed distance fields to calculate collisions which enables some other effects to be achieved, such as attraction and repulsion from object surfaces or making particles flow around the particle surface, as selected by the Mode parameter.

At least one 3D Object Node must be connected via the Object Nodes input for this node to be effective. If static objects are connected the signed distance field is only built once. If animating or deforming objects are connected the signed distance field has to be built every frame, so it has a considerably higher performance overhead.

Particle Events may be triggered when collisions occur. This allows effects such as particles changing colour, size or material on collision, or emitting new particles at the point of collision.

Example
Example Nodegraph

Attributes

Name Description
Mode Choose how the node interacts with the input object.
  • Attractor, moves the particles towards the mesh.
  • Repel, moves the particles away from the mesh.
  • Collision, particles collide with the object and bounce off.
  • Follow Contours, particles flow around the surface of the object.
Radius Limit the radius at which particles can be affected by the affector.
Life Effect Coeffs How much the particles are affected by the affector at different stages of the particles life cycle. Values 1 and 2 are control points used to control a bezier curve between values 0 and 3.
Colour Weight Controls how much the colour value generated by the affector is blended with the particle’s current colour.
Collision Velocity Scale Scales the velocity of the particle after a collision so they can be made to slow down.
Is Inside Threshold Distance inside or outside the object at which collisions are considered to have occured.
Surface Distance Target The radius of the particle when determining collisions.
On Surface Velocity Scale Scales the velocity of the particle when it is on the surface of the object.
Collision Event Likeliness Controls for what fraction of collisions a collision event should be triggered.
Use Colours Toggle whether to use the colours input by the mesh.
Invert Space Invert the object so areas inside the mesh are considered hollow and areas outside are filled.
Allow Animation Toggle whether to allow animation in the mesh to be accounted for with the affector.
SDF Width The depth in pixels of the signed distance field 3D voxel texture.
SDF Height The height in pixels of the signed distance field 3D voxel texture.
SDF Depth The width in pixels of the signed distance field 3D voxel texture.

Inputs

Name Description Typical Node Input
Object Nodes The source meshes for the particles to be affected by. 3D Object
Animated SDF Bounding Box Bounding box to specify the size of the input object if it is animating or deforming. Bounding Box
Affected Emitters Choose which emitters can be affected by the affector. Primitive Emitter
Procedural Falloff Use the SDF values from a procedural system to dictate the falloff. Procedural Root
Transform Modifier Links all transform properties to the input node. Null
Target Node Always faces the x-axis towards the inputs anchor point. Null
Local Transform Override Override the transformation values of the node, relative to its parent. Null

Outputs

All nodes connected to this node are treated as if flowing to the parent node, and inherits any transformation changes along the chain.