You can set constraints between rigid bodies to limit a rigid body to a specific type of movement. For example, you could create a trap door that has a hinge at one end of the door. Then when some crates fall on a trap door, the collision causes the trap door to open up and the crates fall through it.
The most common way to use constraints is to constrain two rigid bodies to each other, the active one reacting to the simulation while the passive one acts as its "anchor." You can also constraint a single active rigid body to a point in global space, constrain several active rigid bodies as a chain, or constrain several active bodies to one passive one.
The rigid body constraints available in Softimage include: hinge, ball-and-socket, spring, slider, and fixed. These are all available from the CreateRigid BodyRigid Constraint or Multi Constraint Tool menu in the Simulate toolbar.
For basic procedures to create any type of constraint, see Overview of Creating Rigid Body Constraints.
When you create a constraint, the constraint object is added to the Constraints group in the current environment (see The Simulation Environment).
Depending on the type of constraint you're using, you can set constraints between two rigid bodies, constrain a single active rigid body to a global position in space, or constrain multiple active rigid bodies to one.
The most common way to use constraints is to constrain two rigid bodies to each other, the active one reacting to the simulation while the passive one acts as its "anchor."
There are two basic workflows you can follow:
To constrain two objects together, choose a constraint command from the Create Rigid Body Rigid Constraint menu — see Constraining Two Rigid Bodies Together.
To constrain multiple objects to one, choose a constraint command from the Create Rigid Body Multi Constraint Tool menu — see Constraining Multiple Rigid Bodies to One.
With either type of workflow, you can also constrain a rigid body to a point in global space — see Constraining a Single Rigid Body to a Point in Space.
Both the PhysX and ODE dynamics engines support all types of constraints, but PhysX also supports offsets for the slider and spring constraints (see Offsetting Spring and Slider Constraints).
As well, PhysX uses a different way to compute constraint forces than ODE. It's generally faster and more robust, but the results may be softer or "squishier" constraints than you may be used to with ODE.
To make the constraints stiffer, you can increase the number of Simulation Accuracy Substeps value in the Dynamics Operator property editor (see Setting the Simulation Accuracy for PhysX). Unfortunately, because this increases the simulation accuracy, your simulation results may also change slightly.
Rigid body constraints are actual objects that you can transform (translate, rotate, and scale), select, and delete like any other 3D object in Softimage. When you change the initial position or orientation (transformation) of the constraint object or any of the rigid bodies that it constrains, this new transformation is automatically used as the initial state for all objects you modify.
See Setting a Rigid Body's Initial State for more information.
You can choose to display or hide the constraint object itself. As with other hidden objects in Softimage, hidden constraint objects are merely invisible, but still participate in the rigid body simulation. A hidden constraint object may cause instabilities in the simulation.
Make sure to mute the hidden objects if you want to keep them, but don't want them to participate in the simulation.
Except where otherwise noted, this work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License