|On this page|
This asset contains a simple Bullet simulation for use while setting up the collision geometry and joint limits of a ragdoll. This can be used to quickly observe how the ragdoll behaves under different settings.
Display Collision Layer
Sets the agent’s current layer to be the same as its collision layer. This can be used to visualize the collision geometry used by the solver.
Number of Substeps
Specifies the number of substeps to be used by the Bullet solver.
Specifies the number of constraint solver iterations to be used by the Bullet solver.
The initial velocity of the ragdoll.
Initial Angular Velocity
The initial angular velocity of the ragdoll.
Controls whether gravity is enabled. Disabling gravity can be useful when debugging situations where agents are initially violating their rotation limits.
Specifies the acceleration due to gravity.
Ground Plane Position
The translation of the ground plane.
Ground Plane Rotation
The rotation of the ground plane.
Pin Root Collision Shapes
If there are multiple root collision shapes, pin constraints will be created to hold those objects together.
Pin Shapes With No Rotation Limits
If there is a shape whose joint did not have a rotation limit set, a pin constraint will be created to attach it to its parent.
Allow Initial Violation of Limits
If the rotation limits are initially violated, the limits will not be enforced but further rotation will be prevented. This allows the objects to naturally move back within the rotation limits, instead of introducing sudden motion at the beginning of the simulation.
Once an angle is greater than softness times the maximum angle, the constraint begins to take effect. Lowering the value of softness softens the constraint boundaries. However, values that are too small can cause a "popping" effect at the start of the simulation for joints that are near their rotation limits and are past the softness threshold.
Constraint Force Mixing
Increase this to make the constraint spongier, and potentially increase the stability of the simulation. The constraint may be violated by an amount proportional to the force required to re-establish the constraint, times this parameter.
The rate at which the constraint corrects errors in position or orientation. A value of 1 will ensure that the constraint is always obeyed. It is recommended to keep bias between 0.2 and 0.5.
The rate at which the angular velocity is changed by the constraint. A low value means the constraint will modify the velocities slowly, leaving the boundaries appearing softer.
Increase this to make the constraint spongier, and potentially increase the stability of the simulation. The position component of the constraint may be violated by an amount proportional to the force required to re-establish the constraint, times this parameter.
Specifies what proportion of the position error will be fixed during the next simulation step. A value between 0.1 and 0.8 is recommended for most simulation.
Stiffness adds a certain resistance to the solver’s attempts to move joints from their current orientation to the "target" (animated or simulated) orientation.
If this is "Constant", the stiffness is the same for the duration of the state. You can choose "Ramp" to change the value according to a ramp based on how long the agent has been in the state.
When Stiffness value is "Constant", how much to resist changes to the current joint rotations. A value between
0.2 (the default) and
0.5 read as "stiff but not too stiff". Values of
1 or more will be very stiff.
When Stiffness value is "Ramp", the start and end times (in seconds) corresponding to the start and end of the ramp. For example, if you set this to
5.0, the ramp lets you control the stiffness over the first 5 seconds the agent is in this state. Outside this range, the ramp extends the first and last values.
When Stiffness value is "Ramp", a scale on the value of the Stiffness Ramp.
Sets the stiffness at each point during the time the agent is in this state. Houdini can’t know how long the agent might be in this state, so you have to set up a Time Range and define the stiffness in just that range. Outside this range, the ramp extends the first and last values.
Constraint Force Mixing
Increasing this value makes the motor component of the constraint softer. A small positive value can increase the stability of the simulation.
Clears the entire simulation cache.
Specifies how many substeps the DOP simulation should perform each frame.
Specifies the frame at which the simulation will start cooking.
Specifies a scale factor that relates global time to the simulation time for the DOP Network.
The following examples include this node.
This example demonstrates how to set up a partial ragdoll, where a subset of the agent’s joints are simulated as active objects by the Bullet solver and the remaining joints are animated.