Houdini 20.5 Nodes Geometry nodes

Pyro Scatter from Burst geometry node

Generates a cloud of points around the input points suitable for pyro trails and particle simulations.

On this page
Since 18.5

This node is a special Point Replicate node tailored to work with the pyro toolsets. It generates a cloud of points per input point. If no input is provided, it creates a point at the origin. The scattered points can be used to generate pyro trail paths or used as a base for particle simulation that can be used for sparks or instanced debris.

Note

To create pyro trails paths from the scattered points you need to use a Ballistic Path following this node. However, Pyro Trail Path node is a higher level tool that incorporates this node while provides you a more complete set of controls for trail generation.

Tip

Use the Quick Setup menu to generate a setup for particle simulation that can provide better collision options for trails than the Ballistic Path node.

Scatter Types

The node allows to generate points around the input points in a spherical shape, from which the velocities pointing outward. This is what most explosions will needs as in most commonly trails and sparks shoot out from the center of the explosion possibly in all directions.

However it can also allows the generate points along the direction of the burst (as set by Direction), which allows to start trails from the mushroom cloud as it rises.

Customizing Scattering

It is possible to generate multiple point clouds with one node. By default, all point clouds will have the same properties, as set by the node’s parameters (such as Initial Size, Direction, etc.). To vary these properties for each cloud, select the Set Varying option on the menu next to the corresponding parameter. This will use a different random value in the provided range for each input point. These generated random numbers are seeded with point number by default; to use a custom integer attribute instead, set Randomization By to Seed Attribute. This will ensure that randomized properties will remain the same for an input point even if points are shuffled or removed from the input–provided value of the Seed Attribute stays the same.

You can also manually override parameter values with attributes. As an example, if the input geometry has a pscale point attribute, its values can be used instead of the global Initial Size. This allows you to finely control the size of the generated point cloud around each input point. To this end, the menu next to the corresponding parameter must also be set to Use Attribute.

Tip

You can use the randomization button on the right side of the menu to put down an attribute adjust node that creates or affects the relevant point attribute.

Parameters that can be controlled by point attributes are listed in the table below.

Parameter Name

Range

Attribute Name

Attribute Type

Initial Size

0 to ∞

pscale

float

Direction

(-1,-1,-1) to (1,1,1)

N

vector

Points per Point

0 to ∞

copynum

integer

Spread Start Angle

0 to 180

spread_startangle

float

Spread Angle

0 to 180

spread_angle

float

Azimuth Start Angle

0 to 360

azimuth_startangle

float

Azimuth Angle

0 to 360

azimuth_angle

float

Line Start

0 to ∞

line_start

float

Line Length

0 to ∞

line_length

float

Velocity Scale

0 to ∞

vscale

float

Start Frame

-∞ to ∞

startframe

float

Parameters

General

Group

The subset of the input geometry points to use for point cloud generation. Leave this blank to use all points.

Guide Display

Set this menu to Distribution Guide to visualize where points can be scattered (as governed by Spread Angle, Spread Start Angle, Azimuth Angle and Azimuth Start Angle).

Quick Setups

This menu lets you run some simple scripted setups to help with the most common tasks.

Single Input Point

Creates an Add node with a single point that is ready to be positioned where you need the explosion to happen.

Color by Start Frame

Creates an Attribute Wrangle node upstream that helps you visualize startframe point attribute over time to see when each input point is triggered.

Simulated Particles

Creates a particle simulation setup that can be the base for spark or instanced debris generation, or to render small particles.

Simulated Trails

Creates a particle simulation setup that is converted to trail paths, which can be used for generating trail sources using Pyro Trail Source.

Simulated Debris

Creates an RBD simulation setup that uses some very basic fractured geometry to simulate destruction pieces flying out from the core of the explosion.

Simulated Sparks

Creates a particle simulation setup that is converted into sparks using Particle Trail.

Ballistic Sparks

Creates a spark setup using the Ballistic Path node rather then a particle simulation.

Initialize

Force Uniform will force set all parameter override menus to be set to Set Uniform; use this if you want all scatter properties to be controlled by the parameter interface. Use Attribute will look for incoming point attributes that can override parameters, and set their corresponding menu to Use Attribute.

Additional Guides

Bursts usually disappear soon after their creation, which can makes it difficult to visualize them together with the scattered points. Turn this on to see pyro bursts as guides while displaying this node to help synchronize the animation of different elements. It can accept a whitespace separated list of Pyro Bourse Source nodes.

Fuse Input Points

When multiple input points are used for one explosion by the Pyro Burst Source, you only need one point to scatter points around. Enabling this node allows you to fuse all incoming points into one or fuse them together by matching attribute values of a custom attribute. When points are fused together, the existing startframe point attribute will be set to the minimum value of all fused point values, while direction (N) will be averaged.

None

No points will be fused together, all points will contribute to point scattering.

All Into One

All incoming points will be fused to a single point that will be used for scattering.

By Attribute

Points that have the same value for Match Attribute will be fused into a single source.

Match Attribute

The attribute to control which points will be fused together. To fuse points together, they have to have the same attribute value. This point attribute must be of integer type.

Randomization By

Controls how the random selection is seeded for parameters that are using Set Varying. Topology changes on the input geometry can shift element numbers, causing different random selection to be used. Seed Attribute lets you provide an integer attribute to make sure the random value is not dependent on element order.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Seed Attribute

The integer type attribute to use for random selection for parameters that are using Set Varying.

Burst Shape

Shape

Shape

Controls the shape of the generated point clouds. Use Sphere if you need the points at the center of the explosion or Line when you need points in the rising mushroom cloud.

Sphere

Line

Initial Size

The starting size of the burst in which points will be scattered. A size of 1 means the diameter of the burst is roughly 1 unit.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Size Scale

Scales the existing pscale attribute by this amount when the menu is set to Scale Attribute. This allows you to quickly scale your burst without adjusting the attribute values.

Variation

Sets the maximum allowed variation. Sizes will be between Initial Size - Variation and Initial Size + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Direction

This vector defines the normal direction to the horizontal plane; azimuth angles are measured within this plane. When Shape is set to Sphere, this vector also corresponds to spread angle of of 0. When using the Line Shape, the point cloud will align with this direction.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation in degrees. The varied direction will spread out in a cone shape from Direction.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Shape Offset

Controls random scattering of points. Change this value to obtain different point clouds.

Point Distribution

Points per Point

The number of points to generate per input point. Increase this parameter to scatter more points.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation. Replication counts will be between Points per Point - Variation and Points per Point + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Spread Start Angle

When Shape is set to Sphere, it sets the minimum angle the scattered points can spread out from the burst’s direction vector (as set by Direction). Set Guide Display to Distribution Guide to help visualize the given angle.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation in degrees. Start angles will be between Spread Angle Start - Variation and Spread Angle Start + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Spread Angle

When Shape is set to Sphere, it sets the angle the scattered points can spread from Spread Start Angle towards the opposite of burst direction (as set by Direction). Set this to 180 degrees on a node with default settings to make the points scattered all around the input point. Set Guide Display to Distribution Guide to help visualize the given angle.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation in degrees. Spread angles will fall between Spread Angle - Variation and Spread Angle + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Line Start

When Shape is set to Line, the points are scattered around a line representing the burst direction (as set by Direction). This parameter sets how far away this line should be created from it’s input point in world units.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation for Line Start. The generated values will be between Line Start - Variation to Line Start + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Line Length

When Shape is set to Line, the trails are generated around a line representing the burst direction (as set by Direction). This parameter sets the length of the line in world units.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation for Line Length. The generated values will be between Line Length - Variation to Line Length + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Azimuth Start Angle

Azimuth controls how points are scattered around the burst direction (as set by Direction), therefore you can use it to generate points only on a desired side of the burst. By default, the value of 0 will create points on the +X axis and they rotated around the burst direction vector counter-clockwise as the value increases.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation in degrees. The generated values will be between Azimuth Start Angle - Variation to Azimuth Start Angle + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Azimuth Angle

Azimuth controls how points are scattered around the burst direction (as set by Direction), therefore you can use it to generate points only on a desired side of the burst. Increasing this value will spread out the points from the Azimuth Start Angle around the burst direction both clock wise and counter-clockwise. A value of 360 means that the points will be created all around the burst direction.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation in degrees. The generated values will be between Azimuth Angle - Variation and Azimuth Angle + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Prune by Noise

Removes some of the scattered points based on a noise pattern. Use this to create more interesting scatter pattern. When this checkbox is turned on, Points per Point might need to be increased to compensate for the removed points.

Size

Controls base feature size of the generated noise. The value applies to each axis.

Offset

The offset along the Y-axis. Change the value of the Offset if the current noise pattern is undesirable.

Roughness

The scale increment between iterations of fractal noise. The higher the value the larger the “jaggedness” added to the output.

Radius Along Length

When Shape is set to Line, controls the radius the points can be scattered along the length of the line. When the ramp’s value is 1, the radius is equal to Initial Size.

Output Attributes

Velocity

Velocity Scale

Sets the length (magnitude) of the velocity vector for the scattered points.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Variation

Sets the maximum allowed variation for velocity scale. The generated values will fall between Velocity Scale - Variation and Velocity Scale + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Top Spread Angle

Controls “verticality” of the paths for points further away from the center, when Shape is set to Line. The spread angle refers to the angle between the burst’s direction (as set by Direction) and a path’s starting velocity vector. Therefore, a spread angle of 0 will result in a path that’s aimed in the burst’s direction, and a spread angle of 90 will result in a path that starts out perpendicular to the burst’s direction. In the common case of Direction pointing away from Gravity, values near 90 will produce paths that are shooting out horizontally at the top of the emission line. Use the +/- button to quickly randomize the value per trail. The spread angle for the starting point of a path is fully determined by its distance to the burst center along the direction. When this distance is at Line Start or its sum with Line Length, spread angle will be set to Bottom Spread Angle and Top Spread Angle, respectively. The spread angle is linearly interpolated for distances between them.

Variation

Sets the maximum allowed variation in degrees. The generated values will be between Top Spread Angle - Variation and Top Spread Angle + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Bottom Spread Angle

Controls “verticality” of the paths for points closer to the center, when Shape is set to Line. The spread angle refers to the angle between the burst’s direction (as set by Direction) and a path’s starting velocity vector. Therefore, a spread angle of 0 will result in a path that’s aimed in the burst’s direction, and a spread angle of 90 will result in a path that starts out perpendicular to the burst’s direction. In the common case of Direction pointing away from Gravity, values near 90 will produce paths that are shooting out horizontally at the bottom of the emission line. Use the +/- button to quickly randomize the value per trail. The spread angle for the starting point of a path is fully determined by its distance to the burst center along the direction. When this distance is at Line Start or its sum with Line Length, spread angle will be set to Bottom Spread Angle and Top Spread Angle, respectively. The spread angle is linearly interpolated for distances between them.

Variation

Sets the maximum allowed variation in degrees. The generated values will be between Bottom Spread Angle - Variation and Bottom Spread Angle + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Enable Direction Noise

When this checkbox is turned on, it changes the direction of the point velocities based on a noise pattern. Use this to randomize and create more variation in the directions velocities face.

Amplitude

Sets the strength of the noise. Higher values will produce more varied point velocities.

Size

Controls base feature size of the generated noise. The value applies to each axis.

Offset

The offset along the Y-axis. Change the value of the Offset if the current noise pattern is undesirable.

Roughness

The scale increment between iterations of fractal noise. The higher the value the larger the “jaggedness” added to the output.

Enable Length Noise

When this checkbox is turned on, it changes the length (magnitude) of the point velocities based on a noise pattern.

Scale Min

Sets how much the length of the velocity can be scaled down from it’s original length. The value of 1 means, that no velocities will be shorter than their original length.

Scale Max

Sets how much the length of the velocity can be scaled up from it’s original length. The value of 1 means, that no velocities will be longer than their original length.

Size

Controls base feature size of the generated noise. The value applies to each axis.

Offset

The offset along the Y-axis. Change the value of the Offset if the current noise pattern is undesirable.

Roughness

The scale increment between iterations of fractal noise. The higher the value the larger the “jaggedness” added to the output.

Limit Length

Limits the magnitude of velocity. Use it to clamp the minimum or the maximum speeds.

Limit Min

Limits the minimum speed.

Limit Max

Limits the maximum speed.

Start Frame

Start Frame

Sets an attribute on scattered points, indicating in which frame each point is triggered. This value sets startframe on the incoming points before the scattering, therefore all points created from the same input point will have the same start frame. Use Offset per Point to vary start frame per scattered point. Use the button to the right of this parameter to visualize start frames for scattered points; grey points haven’t triggered at the current frame, while red ones have.

Click the randomization button on the right side of this parameter to randomize the value per incoming element. This will create/select a corresponding attribute adjust node to give you greater control over the parameter’s value.

Start Frame Visualizer

When this is turned on, it colors the scattered points that has not started as grey, and already started points as red.

Offset

Offsets the existing startframe attribute by this amount when the menu is set to Shift Forward or Shift Backward. This allows to quickly change the startframe attribute without the need of adjusting the attribute value. This value sets startframe on the incoming points before the scattered points are generated, therefore all points created from the same input point will have the same start frame.

Variation

Sets the maximum allowed variation. The generated values will cover the range from Start Frame to Start Frame + Variation.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Offset per Point

Sets the maximum allowed start frame offset extension for each point. You need to turn on this checkbox to vary start frames for the scattered points generated from the same input point. This will set the offset value as unit of frames, when you only need couple of frames as offset. However, if you need an offset longer than a few seconds, As Time Duration might prove a better alternative. Random Distribution will pick startframe values between Start Frame and Start Frame + Extension per Point, which can be used when Shape is set to Sphere. Use Along Direction when Shape is set to Line to start the scattered points gradually along the burst’s direction (as set by Direction).

Offset per Point

Sets the maximum allowed start frame offset extension for each scattered point as unit of time. It might prove easier to provide the offset as unit of time when the trails need to live longer than some seconds.

Seed

Controls random selection for variation. Change the value of the Seed if the current variation is undesirable.

Start Frame Over Length

When Shape is set to Line, this ramp allows you to start the scattered points that are closer to the burst center first and gradually releasing the points as they are further away. The left side of the ramp refers to points that are the closest to the burst center, while the right side refers to points that are the furthest. When the ramp’s value is set to 0, it will set startframe to the value given by Start Frame. Where the ramp’s value is 1, it will set startframe to Start Frame + Offset per Point.

Generic Attributes

Copy Input Attributes

Copies custom created point attributes from the input points to the generated points. This will ignore copying all internally used attributes.

Attributes

Only copy attributes whose names match this pattern. The default * copies all attributes. This will ignore copying all internally used attributes.

Point Index

The point attribute storing the index number of the generated scatter point.

Rest Position

The attribute that can cause noise patterns to stick to each point. Generate noise pattern using this attribute to make sure the noise stays consistent on each point over time.

Length Position

The point attribute storing the position of each scattered point along the burst’s direction (as set by Direction), when Shape is set to Line.

Randomization Attribute

This will output the attribute used by Randomization by parameter. By default it will output an integer type point attribute trailid.

See also

Geometry nodes