Deborah R. Fowler
Fluids - Pyro
Posted: May 2 2020
Updated April 28 2024
See Introduction to Pyro
SPARSE PYRO
In the Houdini 20 documentation there is an excellent section on pyro https://www.sidefx.com/docs/houdini/pyro/intro.html
NOTE: they recommend starting with shelf tools.
There is also a section that give an overview of the how-to of using pyro https://www.sidefx.com/docs/houdini/pyro/pyro.html#overview
Sourcing is typically now done with points (17/17.5 so for example a pop network, or just a surface point scatter) that are converted into volumes by rasterizing point attributes (yes, there is a node for that). There are several nodes to do that (listed on the documentation above). The sourcing is feed into the Volume Source node and the respective fields needed are created (pyro node). The solver then takes care of the calculations.
There is now also the option of doing all of this at SOP level with the pyro solver in sop - (just a wrapper around the dop for convenience).
There is an excellent section on what the various controls do https://www.sidefx.com/docs/houdini/pyro/background.html
Also in the section on Pyro workflow read "General workflow https://www.sidefx.com/docs/houdini/pyro/lookdev.html
How does a sparse pyro differ? One of the
problems with classic pyro was keeping up with fast moving
sources in terms of the resize container. Many solutions were
used, however sparse pyro eliminates the need for things like
clustering
[This diagram I will update - they now put the
smoke import and smoke source into one container.]
This has substantially changed
from the non-sparse solver (now called legacy). You
also may have heard of Axiom - a
free plug-in for Houdini for pyro - sparse GPU accelerated
solver.
- pyro (SmokeObject
Sparse) - controls the resolution of your simulation
but now labeled Voxel Size
- source_density (or fuel) - Volume Source - similar to the non-sparse, bringing in the density and temperature fields
- pyro solver (sparse)
https://www.sidefx.com/docs/houdini/nodes/dop/pyrosolver_sparse.html
Calculations are done in the areas of interest
only. These are determined by the reference fields in the
resizing subtab in the advanced tab. Positive areas are flagged
as active, this region is dilated.
This can be visualized if you enable Active Region under the
guides of the smoke object (sparse), below for sparse fireball.
PYROSOLVER (sparse) tabs
The look has substantially changed from the non-sparse solver. However we are still looking at similar controls. Below are the Simulation and Shape tabs for sparse.
For comparison these are the non-sparse
The controls are similar in some cases. In particular, dissipation is familiar, as well as many of the shape controls. In addition there is a pyro SOP node which integrates the controls and adds a Look tab.
In the SideFX documentation section on differences between legacy and sparse pyro, fuel was used and would ignite and then the burn field was linked to heat so that heat and burn accumulated to generate outputs.
The new workflow for H18 requires the burn to be generated in SOPs and brought in as part of sourcing to give more control. In 17/17.5 the workflow was shifted to point source so this gives an excellent way to shape your pyro.
In the legacy solver voxels were created for the simulation using bounding boxes. Even when adaptive, this causes issues, particularly with fast moving pyro. Sparse volumes create information where the volumes are, but these areas communicate. (An analogy is VDB versus standard volume). There is still a padding parameter that can be adjusted should your pyro get clipped. Entagma has an excellent benchmark comparison for speed on vimeo.
Excellent short videos from Entagma (in H18, not 18.5) on sop level:
- sparse Billowy Smoke with pyro sop solver by Entagma.
- I highly recommend walking thru this tutorial even though you can get the same results from the shelf tool it will help understanding
- I have created a sticky noted hipnc file created now in Houdini 18.5 if you get stuck
- spreading fire Pyro Fx | Spreading Fire by Entagma
- I have created a sample file now in Houdini 18.5 if you get stuck
Reminder about the above controls (on the tips page there are visual reference but very briefly)
- Buoyancy - lift of your simulation
- Cooling Rate - how quickly the temperature
field reduces (lower number, higher temp, higher number, lower
temp over time)
- Dissipation - how fast your smoke density
dissappears
- [microsolver] Disturbance - breaks up
flames, adds detail so for example to break up edges
- [microsolver] Turbulence - large scale
swirling/churning (chaotic changes to mimic natural
phenomena), changes the shape
There are some excellent shelf tools, but also a suite of tools
from the tab menu (introduced in Houdini 18 onward)
Shelf tool from 19.5.303
Procedural Kate has a brief summary and links to references here
It is worth watching Houdini 18 Launch
Presentation to see some of the tools in action.
Straight from the SideFX documentation is a list of the tab menu
tools
These names may not be exact. Create a geo container and type pyro
before the name. The pyro configure bonfire has a setup for use in
karma!
Some of the above are only sourcing setups and some of them are
full setups. Use the shelf tools to define a template and study
that first.
Finally, the pyro post process node and preparing the best look
is the final step to getting great pyro.
There is an excellent tutorial on using third party renders rather
than mantra by Sadjad Rabiee https://www.youtube.com/watch?v=kskWKXdSK5s