Houdini 20.5 Nodes Geometry nodes

Pyro Source Instance geometry node

Creates source instance points from spawn points for sourcing pyro simulations with packed sets.

On this page
Since 19.5

The Pyro Source Instance SOP injects spawn points generated by Pyro Spawn Sources and creates instance points for them when they activate. These instance points can be fed to the Pyro Solver SOP to drive a simulation using packed sets.

In addition, this operator can register rule overrides that allow you to systematically adjust certain source rules with values of point attributes. As a simple example, you can randomize an attribute and use it as a scale multiplier for any rule that applies to the temperature field; this will result in different sources being hotter or colder (possibly for the same packed source set). You can achieve this by following these steps.

To...Do this

Randomize the scale of any rule that affects the temperature field

  1. Add a new override by clicking the button next to the Overrides multiparm.

  2. Set Target Field for the new multiparm entry to temperature.

  3. Change Property to Scale.

  4. Set Attribute to temperature_scale. This attribute does not yet exist in the input. This will be done the next step.

  5. Press the button next to the Attribute parameter to create an upstream Attribute Adjust Float node. This operator will be set to create and randomize values of a new point attribute called temperature_scale. Its values will then be applied as temperature scale modifiers to each instance’s rules by this Pyro Source Instance node.

The registered Overrides are applied to all incoming spawn points. Assigning the value of 1 to the Attribute will effectively leave the rule untouched for that spawn point (the value is used as a multiplier). This way you can exclude certain spawn points from an override. Alternatively, it’s possible to use two different Pyro Source Instance nodes for different spawn points, each with their own overrides. The generated instance points from these two nodes can be merged and passed to the solver together.

Attributes on instance points are read by the Pyro Solver to determine which source set to apply, where to apply it, and how. These relevant point attributes are listed below.

name

Name of the packed source set that should be applied. This is copied from the spawn point.

P

Location of the instance in world space. This is copied from the spawn point.

orient

Orientation of the instance in world space. This is copied form the spawn point.

pivot

The local pivot point for this instance. This is copied from the spawn point.

v

Linear velocity of the instance in world space. This is copied from the instance point, and is applied to any rules for Vector fields that have Add Instance Velocities enabled (as specified on Pyro Source Pack).

w

Angular velocity of the instance in world space (about its pivot). This is copied from the instance point, and is applied to any rules for Vector fields that have Add Instance Velocities enabled (as specified on Pyro Source Pack).

frame_offset

Offset into the relevant packed source set’s sequence. A value of 0 indicates that the very first frame of the packed source set should be used. This is calculated using the current frame and the spawn point’s startframe, looplength, startoffset, and sourcespeed attributes.

source_rules

This dictionary array attribute stores the sourcing rules that govern how the volumes of the packed source set will be merged into the pyro simulation. Each entry in the array stores an individual rule, containing all the data that comes with a single entry under the Source Volumes section of the Pyro Solver SOP. The instance’s rules are copied from the corresponding packed source set and modified to incorporate any relevant Overrides registered on this Pyro Source Instance node.

Inputs

Spawn Points

Spawn points created by the Pyro Spawn Sources node.

Packed Source Sets

Library of packed source sets (each created using the Pyro Source Pack SOP). The current frame offset for each input spawn point is checked against its packed source set’s frame range; if in range, an instance point is created from it. Additionally, source rules are transferred from the packed sets to the instance points, with Overrides applied.

Outputs

Instance Points

Instance points that can be used by the Pyro Solver (when its Source Type is set to Packed Sets).

Parameters

Reference Frame

Reference frame for the library of packed source sets. All source sets in the library are timeshifted to start on this frame for consistency. The value of this parameter should match the Reference Frame on Pyro Source Pack nodes that were used to generate packed source sets in the library (second input).

Visualize Sources

When turned on, you see a guide geometry in the viewport to visualize the actual sources for each instance point.

Overrides

You can use point attributes on the spawn points to adjust certain properties of source rules (that come from the packed source set). To this end, the attribute can be registered as an override using this multiparm. The value of each point Attribute is applied multiplicatively to the selected Property, for any rule that applies to Target Field.

Target Field

Identifies which rules should be adjusted: any rule that applies to this Target Field will be adjusted using values of the Attribute.

Property

Specifies which property of the rule to override. The value of this property for the relevant rule is scaled by the value of each spawn point’s Attribute.

Attribute

Name of the point attribute on the spawn points. The value of this attribute is applied as a multiplier to the selected Property for any rule that applies to Target Field.

You can also randomize a specific attribute of the Target Field. Enter the attribute’s name and click the button on the right side of this parameter to randomize the value of the Attribute for each spawn point. This will create or select a corresponding attribute adjust node to give you greater control over the attribute’s values.

See also

Geometry nodes