Houdini 20.0 Destruction

Simulating in SOPs

On this page

You can simulate RBDs in SOPs using the RBD Bullet Solver node. This allows you to create simple bullet simulations at the SOP level. If you have a Houdini FX License, you can dive inside the solver and edit the subnet with custom DOP forces. Otherwise, you can stay at the SOP level and use the exposed parameters on the node.

Tip

To see a typical node network setup for simulating RBDs in SOPs, use the Simple Fracture shelf tool.

RBD Bullet Solver SOP

The three most important parameters to make sure your simulation runs smoothly are the Time Scale, Substeps, and Constraint Iterations. They are located at the top of the Solver tab and control the speed, resolution, and accuracy. The following are additional things you can do with the exposed parameters on the RBD Bullet Solver.

To...Do this

Create a ground plane

Go to the Collision tab’s Ground Collision section. From the Ground Type dropdown, choose Ground Plane.

Alter the gravity in your simulation

Use the Gravity parameter on the Forces tab. Gravity is set to Earth’s gravity (-9.81) by default.

Make your object collide with another

Connect your collision geometry to the 4th input of this node and turn on the Collision Geometry checkbox on the Collisions zab. You can also set up simple properties such as what the Bounce and Friction between the objects are and what Collision Shape collision for the Bullet Solver to use.

Emit RBD objects and their constraints over multiple frames

Navigate to the Setup tab’s Simulation section. Turn on the Emit RBDs checkbox. This will continually pull in time dependent geometry objects and their constraints through the second input over time.

Increase the simulation cache for RBD emission

When Emit RBDs is turned on (see task above), go to the Advanced tab’s Emission Solver and enter a new value for Emission Cache Memory.

There is also a Visualization tab with controls for showing the collision geometry representation, active/inactive pieces, which pieces have fallen asleep, constraints, guided simulations, and much more. These controls are very useful for debugging your simulations.

For more information, see the RBD Bullet Solver SOP help page.

RBD Configure SOP

The RBD Configure SOP lets you set up properties individually for different sets of RBD objects. The Group parameter allows you to select a group of pieces (such as wood pieces) and set up whether they're Active, Animated, Deforming, or Sleeping. It also lets you set up what type of collision shape they should use, how much collision padding there should be, any speed limitations etc.

The Physical Attributes controls are very useful, as there are many predefined density, friction, and bounce settings for different material types. For example, if your material Type is Wood , you can choose between: Balsa Wood, Beech, Birch, Cedar, Mahogany, Maple, Oak, Pine, or Plywood. This will automatically fill in the appropriate Density, Friction, and Bounce coefficients that you would get from engineering textbooks, which will give you a head start on getting results that are physically realistic to go along with the fracturing methods.

There are also many Visualization options for the properties you're setting up. For example, if you're setting up which pieces are active, you can choose to visualize the Active pieces. You can also change the Bounding Type to Bounding Box and enable the Use Bounds option to manually control which piece are active or not using a bounding box in the viewport.

There’s also a built in Exploded Scale parameter at the top of the viewport for exploding outwards for a more detailed visualization.

Note

You could alternatively use your own bounding geometry by connecting it to the 4th input of this node.

For more information, see the RBD Configure SOP help page.

Destruction

RBD Material Fracturing

Next steps

Introduction to Material Based Destruction

  • Getting Started

    Loading the source scene and exploring it.

  • Tutorial

    Step by step introduction to material based destruction.