The Pyro Solver is a wrapper around a DOP network to simplify the running of Pyro solves.
The first input provides the sources for the Pyro simulation. This should be a set of named volumes. The exact names required are determined by the Sourcing tab. The Pyro Source SOP and Volume Rasterize Attributes SOP are useful tools for creating source volumes.
The second input provides the collisions for the Pyro simulation. It
should be a SDF VDB, such as the second output of the Collision Source SOP or the main output of the VDB From Polygons SOP. If the collision
is animating, points with a
v attribute can be used to describe
the motion. The two outputs of the Collision Source SOP can be merged
and used as the second input to provide this.
Clears the entire simulation cache.
What frame on the Houdini playbar that the simulation should begin at.
The size of a voxel in the Pyro simulation. Cutting your voxel size in half will require eight times the memory and time, so a careful trade off between detail and pragmatism is required.
The origin of the pyro simulation. This is used as the center of the maximum size.
The maximum size the pyro sim can reach. This is measured relative to the center. This can be useful to avoid unexpectedly running out of memory from bad inputs.
By default smoke operates in an open container. When the maximum bounds are reached, the smoke just vanishes. Instead one can restrict by adding implicit walls past which the smoke cannot move. These form stronger collision boundaries than normal colliders, but are restricted in their shape. The smoke cannot be fully enclosed in a box, so either a floor or ceiling can be specified, but not both.
The collision will be built using the first volume or VDB in the
input, which will be treated as an SDF. Velocities will be
v attribute on the points of the input using
nearest point. You can merge the two outputs of the Collision Source
SOP to feed this.
SDF + Volume Velocity
The collision will be set to the
collision named volumes and
VDBs in the input which should be SDFs. The velocity will be set to
v named volumes and VDBs in the input. This requires more
manual setup but can provide the fastest and cleanest setting
Collision Voxel Size
In the end, collisions are always performed at the simulation resolution. However, often a lower fixed resolution can be used for the signed distance field of the object. This usually should be the same resolution that was used to generate the collision volume upstream.
Often if sourcing fire on the surface of an object one doesn’t want the fire to get stuck in the surface, so it is useful to shrink the object a bit. This can provide that by offsetting the collision distances.
NOTE: If the collision volume is a VDB it can only be shrunk so far before it will disappear entirely. This is usually around three times its voxel size. Adjust the bandwidth options to allow more extreme offsets or use a VDB Reshape SDF SOP.
Use Deforming Geometry
Controls if the collision geometry is rebuilt every frame or the first frame is used. Not rebuilding can result in faster simulations.
These buttons enable/hide the viewport visualization of the pyro volumes. The viewport visualizers are active at Object and SOP level viewports and will provide ways to inspect the values of the different volumes that go into a pyro simulation. The Modify buttons bring up the viewport visualization customization dialog to allow precise control over how the volumes are visualized. Because these are normal viewport visualizers, they can also be accesed from the Visualization toolbar in the viewport. Note that these do not appear in the contained DOP network.
See the Pyro Solver DOP for these parameters.
See the Pyro Post Process SOP for these parameters.
Specify which volumes of the first input should be merged into the
Pyro simulation each frame, and how to do the merging. The volumes
should have a
name attribute that is used to tie each input
volume to an operation.
See the Volume Source DOP for these parameters.
There are many internal fields in a Pyro simulation, not all of which you may need to save out or render. This controls which fields are brought out of the simulation and into SOPs.
See the Pyro Post Process SOP for the Conversion parameters.
Fields to Export
Toggles whether this specific field should be exported.
Controls how the volume will appear in the viewport. Ancillary data volumes like velocity and rest fields are often useful to mark as invisible so they are available to mantra but don’t get in the way of viewing.
The scalar or vector field to extract from the simulation. It
will be properly named, ie, the vel field will create
vel.z named volumes. It will also be in a group
named after the DOP object.
While this is designed around exporting fields, any geometry can actually be exported here.
Controls global substeps at the simulation level, as opposed to the pyro-specific substeps in the Solving::Advanced tab.
Global substeps are best used when one needs to export the substepped geometry. They will use more memory per frame, however, as all the substeps will be kept rather than just the final values each frame.
Controls if the simulation is cached to memory.
Cache Memory (MB)
Maximum size of the memory cache.