On this page

Viscous fluids

New

New Viscous Fluids tools for setting up temperature and variable viscosity simulations. These tools let you create excellent simulated lava, cooling, and melting objects.

The lava tools put blackbody point colors on the fluids to create realistic molten looks. There is also a new lava shader with dual rest controls for better tracking of crust formation.

New

OpenCL support for viscous fluid simulations.

New

Support for viscous fluids and lava in DOPs.

Bullet solver

Activation

New

The Bullet solver can now activate static objects at the instant of collision, instead of at the end of the frame. This gives a much more accurate collision response (for example, when using a SOP solver on the impact data). The min_activation_impulse point attribute specifies how strong an impact needs to be to activate an object. The activationignore point attribute specifies objects that should not cause activation if they collide. It uses the same syntax as the collisionignore attribute.

New

You can now animate friction and bounce over the course of a simulation.

Constraints

New

The Bullet solver now supports disabling collisions between constrained objects. All constraint types that work with the Bullet solver (pin, spring, cone, twist, slider) now have a Disable Collisions parameter. Constraint networks can use a disablecollisions primitive attribute to disable collisions on individual constraints.

New

You can now override the number of constraint solver iterations per-constraint. All constraint types that work with the Bullet solver (pin, spring, cone, twist, slider) now have a Constraint iterations parameter. Constraint networks can use a numiterations primitive attribute to set iterations on individual ties.

New

Added parameters to the Hard Constraint Relationship and RBD Pin Constraint to allow angular motors. Angular motors specify a target relative angular velocity for the objects, which the constraint will attempt to enforce. The Angular Motor Denting example file demonstrates one use for this.

Fixed

Spring constraints are much more stable.

Solver settings

New

A new parameter on the solver lets you randomize the constraint solving order. This may improve stability in some situations, for a slight reduction in speed.

New

You can use point attributes on packed primitives referenced by RBD Packed Objects to customize bullet solver settings per-object. The attributes have names bullet_name where name is the internal name of a parameter on the Bullet Data DOP. For example, bullet_georep, bullet_adjust_geometry, bullet_autofit, bullet_collision_margin, bullet_groupconnected, and bullet_shrink_amount.

Attributes

New

The Bullet solver now recognizes the dead point attribute on packed primitives, so you can use the POP Kill DOP to remove objects from the simulation.

New

If a packed primitive has a bullet_ignore attribute with a non-zero value, the Bullet solver will ignore it.

Performance

Fixed

The Bullet solver is now much faster at collisions with large numbers of closely packed static objects (such as particles).

Fixed

The Bullet solver is now faster for simulations with a large number of animated static object. The interpolation of animated static object transforms is now multithreaded.

Fixed

Improved Bullet solver performance when only a small percentage of simulation objects have constraints.

Fixed

Collisions between compound shapes (for example glued chunks) are significantly faster. A test with four glued objects of about 20K pieces colliding against each other is around 4.5× faster than Houdini 14.

Fixed

Improved the performance of constructing convex hull shapes to be about 2× faster.

Shelf tools

New

New tool for doing ragdoll simulation simulation outside the crowd system.

Fixed

The setup created by the Glue Adjacent shelf tool now checks if the source geometry is animated, and if so re-imports it on every frame.

FLIP fluids and whitewater

Compression

New

The Whitewater Source and Fluid Source geometry nodes can now cull and distribute emission based on a camera. Whitewater Source can now use particles created by the Pack Points geometry node, so it only has to unpack points in the active region.

New

The new Fluid Compress geometry node performs lossy compression of the output of FLIP simulations, often dramatically decreasing the disk space used by saved simulation data. The Particle Fluid Surface and Whitewater Source nodes recognize the compressed data and fill in missing particles using the surface and vel volumes.

Solvers

New

The FLIP Solver has new options to create decaying vorticity and dual rest attributes for use in rendering.

The liquid shader now uses this feature.

New

Distributed global pressure solve for FLIP fluids gives greatly increased performance. FLIP fluid simulations can now handle over 2,000,000,000 particles.

New

The FLIP solver has a new Velocity Transfer parameter that allows choosing between the default "Splashy Kernel" for high energy, splashy simulations, and a new "Swirly Kernel" (based on the APIC technique) for high vorticity simulations with less surface noise. The swirly kernel can be especially useful at small physical scale or high viscosity.

New

The Distributed solve parameter on the solver turns on global pressure solving. This prevents wave artifacts along the seams between distributed slices when you're simulating a contained fluid.

Changed

The Whitewater solver now defaults to operating directly on volume data from SOPs, instead of copying them to DOP volumes, to save time and memory.

Volumetric Foam is now on by default.

Changed

The Gas Particle to Field and Gas Field to Particle DOPs have new options to Preserve Angular Momentum with additional particle attributes when transferring velocity between particles and grids.

Fixed

On FLIP solvers created by the shelf tools, the Particle motion ▸ Reseeding ▸ Particles per voxel parameter now uses a channel reference to compute a value relative to the object’s grid scale.

Surfacing

New

Particle Fluid Surface geometry node 2.0 includes new controls for filtering the surface, optionally based on velocity, vorticity, proximity to collisions, and other criteria. This gives much better smoothing of the fluid surface without loss of important detail.

It can also copy attributes from the particles to the surface, such as vorticity and rest.

Shelf tools

Changed

Shelf tools that create FLIP simulation networks now add compression and the new fluid surfacer.

Slicing

Fixed

Fixed a problem where the first cook only saw one slice if the slicing node came after the solver in the network.

Particles and grains

Sleep/awaken

New

The particle solver has an option to "auto-sleep" particles by turning on their "stopped" flag. The POP Awaken node lets you turn off the stopped flag when a key object or fast-moving particles are near. This lets you create efficient simulations where settled particles/grains don’t solve unless there’s something happening nearby.

New tools on the Grains shelf tab let you set up awaken relationships in the viewport.

Shelf tools

New

New Sandbox tool for for setting up common types of grain simulation.

Distribution

New

You can now distribute grains simulations.

Added the slice and distribution tools to the Grains shelf tab.

Fixed

The Gas Net Slice Balance DOP can now handle more than 2 billion particles, and is better at computing time estimates.

Grain solver

New

The grain solver will not try to solve particles with the "stopped" flag on.

New

If you know all grains in a simulation will have the same radius, you can turn on Assume uniform radius in the solver to optimize lookups.

Changed

Simulations created by the shelf tools have activation turned off for the first frame. This lets you set up positions/constraints/etc. without constant recooks.

Changed

Grains now use pcfind instead of pgfind internally. This is slower but more stable because it handles arbitrarily separated particles.

Fixed

5× faster grains simulation for smaller datasets.

Fixed

The OpenCL version of the solver now supports varying sized grains and the attraction weight and friction attributes.

Mass-shock changes

Changed

The POP Grains node’s Enable mass-shock scaling parameter is now a menu with a new "Local" option which is the default for new nodes. This computes the mass-shock "just in time", avoiding the need for an explicit origin, and possibly running faster than looking up the mass value in memory.

The node now starts with maximum acceleration turned on and set to 50 (5× gravity). Experience shows this is effective at dampening explosions caused by suddenly overlapping objects.

Changed

The solver now only uses the shockmass attribute for particle interaction, not for explicit constraints or shape matching.

Sourcing

New

The Grain Source geometry node has an option to adjust grain sizes to avoid overlaps in the initial distribution. This avoid explosions on the first frame.

New

The Points from Volume and Grains Source geometry nodes have a new option to dither the surface. The Sand Box shelf tool now dithers the surface of the sand.

Fixed

The Grain Source geometry node no longer randomizes particle orders.

Solids/FEM/Cloth

Performance

Fixed

FEM simulations now run up to 10× faster compared to Houdini 14.

Fixed

Faster viewport display with large numbers of tets or polygons.

Self-collision

New

The Solid Object and Cloth Object nodes have new controls for self-collision behaviors. You can turn off collision within connected components, and collisions within fractured parts.

Embedding

Changed

The Solid Object shelf tool now sets up an embedded setup with separate geometry for simulation and rendering.

This tool now uses the new Solid Embed geometry node instead of creating a chain of geometry nodes. This node embeds an input mesh into a slightly larger mesh suitable for direct simulation in the finite element solver. You can use the Element size parameter to change detail of the embedded mesh.

The Solid Object and Cloth Object nodes now have a checkbox to easily enable/disable embedding.

Sourcing

Fixed

The Solidify geometry node, which is useful to prepare models for tetrahedralization, now handles difficult topologies more robustly, and produces better optimized polygons.

Other changes and improvements

Easy geometry visualization

New

Visualize Geometry DOP helps visualize geometry data in different nodes in the network. Any visualizations you attach to this node will be applied to the Geometry data in the node it’s wired from. You can hover over a DOP node and press X to rewire a visualize node onto that node.

This can be very useful with the volume visualizer to inspect clouds, pyro fields, and so on.

The intention is to later replace this somewhat inefficent method with something more integrated with the visualization editor.

Static/deforming objects

New

The SOP Geometry node has a new Transform time parameter to fetch the transform from a different time than the geometry. This allows the Static Object node to have to have proper collision velocities when Use deforming geometry and Use object transform are both on.

Changed

Added a parameter to the Object Position and Static Object nodes, to use the geometry translation as the pivot. Turn this on to get more accurate off-origin velocities when Use object transform is on.

Changed

The Deforming Object shelf tool now turns off Use object transform when the collision object has no object-level scaling.

Fixed

The Collision Source geometry node is now not time dependent if its input isn’t time dependent. This makes the Deforming Object shelf tool faster for static geometry.

Fixed

Volume sample mode for importing collision SDFs in the Static Object DOP when Use object transform is off is now faster.

Fixed

The Deforming Object shelf tool now automatically unpacks packed geometry.

Constraints

Fixed

The Constraint Network node now generates warnings if any required attributes are missing, instead of silently failing.

Fixed

Constraint networks now support the anchor_id attribute when attaching constraints to RBD Packed objects.

Pyro

See what’s new in Pyro shading.

Fixed

You can now distribute resizing pyro simulations.

Gas micronodes

New

Gas Attribute Swap microsolver efficiently swaps around geometry attributes. This is useful for stashing and restoring attribute values.

New

Gas Field VOP DOP and Gas Field Wrangle now have the ability to bind geometry, DOP data, and contexts as extra inputs. The node computes the inputs prior to running the VOPs/VEX.

Fixed

Gas Curve Force now uses force scale parameter, and shows trail guide length option.

Node changes

New

The Impact Analysis node now has a checkbox to visualize the impact points in the viewport.

Fixed

The solid object’s Initial state tab now has linear and angular velocities like other object types.

Misc

Changed

The File Cache SOP created by the Deforming Object shelf tool now uses the solver’s maximum substeps.

Changed

The ROP dynamics node and DOP render node are now available in Houdini Indie and Houdini Apprentice.

Fixed

Some distributed simulation network traffic is now compressed to improve performance.

Fixed

Optimized particle/SDF collisions give improved performance and less memory usage for particles, grains, whitewater, and FLIP solvers.

Fixed

Reduced memory usage of the RBD Packed Object DOP.

Fixed

The Impact Analysis shelf tool now works with Bullet RBD Solver nodes.

Fixed

The Emission attribute parameter on the POP Source node now works.

Fixed

The POP Group DOP can now use a DOP Geometry object as a bounding object.

What was new in Houdini 15