Go to: Related nodes. Attributes.

The rigid node contains the attributes for the rigid body. This node controls the active rigid body behavior of a polygonal or nurbs shape. If the object is a nurbs shape the shape is tessellated for collisions. The tessellated shape is then passed to the rigid solver. This node also includes a cache which the user can turn on on a per rigid body basis. This node moniters the mesh/nurbs shape to determine if the shape's surface changes via a scale or some form of deformation. If the shape is changed the surface is re-tessellated and passed to the rigid solver.

Node name Parents Classification MFn type Compatible function sets
rigidBody shape drawdb/geometry/dynamics/rigidBody kRigid kBase
kNamedObject
kDependencyNode
kDagNode
kShape
kRigid

Related nodes

rigidConstraint, dynBase, field, airField, turbulenceField, radialField, vortexField, newtonField, volumeAxisField, dragField, uniformField, gravityField, pointEmitter, particle, geoConnectable, spring

Attributes (112)

Attribute quick index omitted (too many attributes to show them all).

Long name (short name) Type Default Flags
currentTime (ct) time 0film outputinputconnectablehidden
This holds the value for time.
rigidWorldMatrix (rmx) matrix identity outputinputconnectablehidden
Local transformation matrix. Contains the same information as the matrix attribute on dagNode but it is stored in a format that can be interpolated easily.
inputGeometryMsg (igm) Message n/a arrayinputconnectable
Connection to geometry shape node.
fieldConnections (fc) Message n/a arrayoutputinputconnectablehidden
Obsolete attribute from version 1. Included only for file compatibility. Not otherwise used. To be removed in post version 3 release.
runUpCache (rc) doubleArray empty outputinputconnectablestorablehidden
run up and instantaneous data cache.
dataCache (dc) doubleArray empty outputinputconnectablestorablehidden
data cache
firstCachedFrame (fcf) integer 0 outputinputconnectablestorablehidden
The first frame of the cache.
lastCachedFrame (lcf) integer 0 outputinputconnectablestorablehidden
The last frame of the cache.
cachedFrameCount (cfc) integer 0 outputinputconnectablestorablehidden
The number of cached frames.
cacheDirtyArray (cda) intArray empty outputinputconnectablehidden
REMOVE IN POST 2.0 RELEASE.
contactName (cnn) string NULL arrayoutputinputconnectablehidden
index to rigid bodies which are contacting.
interpenetrateWith (itw) Message n/a arrayoutputinputconnectable
connections to objects which this rigid body is allowed to interpenetrate.
initialPosition (ip) double3 0, 0, 0 outputinputstorable
The initial position of the rigid body in the dynamics simulation.
initialPositionX (ipx) double 0.0 outputinputconnectablestorable
The X component of the initial position.
initialPositionY (ipy) double 0.0 outputinputconnectablestorable
The Y component of the initial position.
initialPositionZ (ipz) double 0.0 outputinputconnectablestorable
The Z component of the initial position.
lastPosition (lp) double3 0, 0, 0 outputhidden
last position of the rigid body
lastPositionX (lpx) double 0.0 outputconnectable
last position x of the rigid body.
lastPositionY (lpy) double 0.0 outputconnectable
last position y of the rigid body.
lastPositionZ (lpz) double 0.0 outputconnectable
last position z of the rigid body.
lastRotation (lr) double3 0, 0, 0 outputhidden
last rotation of the rigid body
lastRotationX (lrx) double 0.0 outputconnectable
last rotation x of the rigid body.
lastRotationY (lry) double 0.0 outputconnectable
last rotation y of the rigid body.
lastRotationZ (lrz) double 0.0 outputconnectable
last rotation z of the rigid body.
initialOrientation (ior) double3 0, 0, 0 outputinputstorable
The initial orientation of the rigid body in the dynamics simulation.
initialOrientationX (iox) angle (double) 0.0deg outputinputconnectablestorable
The X component of the initial orientation.
initialOrientationY (ioy) angle (double) 0.0deg outputinputconnectablestorable
The Y component of the initial orientation.
initialOrientationZ (ioz) angle (double) 0.0deg outputinputconnectablestorable
The Z component of the initial orientation.
initialVelocity (iv) double3 0, 0, 0 outputinputconnectablestorable
The initial velocity of the rigid body in the dynamics simulation.
initialVelocityX (ivx) double 0.0 outputinputconnectablestorablekeyable
The X component of the initial velocity.
initialVelocityY (ivy) double 0.0 outputinputconnectablestorablekeyable
The Y component of the initial velocity.
initialVelocityZ (ivz) double 0.0 outputinputconnectablestorablekeyable
The Z component of the initial velocity.
initialSpin (is) double3 0, 0, 0 outputinputconnectablestorable
The initial angular (rotational) velocity of the rigid body in the dynamics simulation.
initialSpinX (isx) angle (double) 0.0deg outputinputconnectablestorablekeyable
The X component of the initial angular velocity.
initialSpinY (isy) angle (double) 0.0deg outputinputconnectablestorablekeyable
The Y component of the initial angular velocity.
initialSpinZ (isz) angle (double) 0.0deg outputinputconnectablestorablekeyable
The Z component of the initial angular velocity
centerOfMass (com) double3 0, 0, 0 outputinputconnectablestorable
For purposes of the dynamic simulation this is the point (in object space) the object naturally should rotate around. For more realistic rotational motion this point should be placed at or near what would be considered the heaviest part of the rigid body.
centerOfMassX (cmx) double 0.0 outputinputconnectablestorablekeyable
The X component of the center of mass to rotate around.
centerOfMassY (cmy) double 0.0 outputinputconnectablestorablekeyable
The Y component of the center of mass to rotate around.
centerOfMassZ (cmz) double 0.0 outputinputconnectablestorablekeyable
The Z component of the center of mass to rotate around.
impulse (imp) double3 0, 0, 0 outputinputconnectablestorablekeyable
Intended to be used to apply a momentary force (via keyframing of impulse) to the object. Should be zero except during the brief period the force is in effect.
impulseX (imx) double 0.0 outputinputconnectablestorablekeyable
The X component of the impulse force.
impulseY (imy) double 0.0 outputinputconnectablestorablekeyable
The Y component of the impulse force.
impulseZ (imz) double 0.0 outputinputconnectablestorablekeyable
The Z component of the impulse force.
impulsePosition (ipo) double3 0, 0, 0 outputinputconnectablestorablekeyable
This is the position (in object space) at which the impulse force is applied to a rigid body.
impulsePositionX (pix) double 0.0 outputinputconnectablestorablekeyable
The X component of the position at which the impulse force is applied.
impulsePositionY (piy) double 0.0 outputinputconnectablestorablekeyable
The Y component of the position at which the impulse force is applied.
impulsePositionZ (piz) double 0.0 outputinputconnectablestorablekeyable
The Z component of the position at which the impulse force is applied.
spinImpulse (sim) double3 0, 0, 0 outputinputconnectablestorablekeyable
Intended to be used to apply a momentary rotational force (via keyframing of spin impulse) to the object. Should be zero except during the brief period the force is in effect.
spinImpulseX (six) double 0.0 outputinputconnectablestorablekeyable
The X component of the rotational impulse force.
spinImpulseY (siy) double 0.0 outputinputconnectablestorablekeyable
The Y component of the rotational impulse force.
spinImpulseZ (siz) double 0.0 outputinputconnectablestorablekeyable
The Z component of the rotational impulse force.
mass (mas) double 1.0 outputinputconnectablestorablekeyable
The mass of the rigid body. Use larger values for heavier objects.
volume (vol) double 0.0 outputconnectable
volume of the rigid body.
bounciness (b) double 0.6 outputinputconnectablestorablekeyable
Controls how much bounce a rigid body contributes to collisions. Larger values increase bounce. Imagine a ball bouncing up and down on a floor. If both the ball and the floor have a setting of 1.0 the ball will bounce to the same height each time it bounces. If either the ball or the floor is modified to have a value less than 1.0 the height the ball bounces to will diminish each time it bounces. Conversely, if either the ball or the floor had been modified to have a value greater than 1.0 the ball would bounce higher with each bounce.
damping (dp) double 0.0 outputinputconnectablestorablekeyable
Controls how much a rigid body tends to lose velocity. A value of 0 result in no velocity being lost to damping. A value of >0 results in velocity being lost. A value of <0 results in velocity being gained. Use larger values for large bulky rigid bodies and values closer to 0 for small compact rigid bodies.
staticFriction (sf) double 0.2 outputinputconnectablestorablekeyable
static friction value of the rigid body.
dynamicFriction (df) double 0.2 outputinputconnectablestorablekeyable
dynamic friction value of the rigid body.
collisionLayer (cl) integer 0 outputinputconnectablestorablekeyable
Determines which collision layer the rigid body is in. Rigid bodies will only collide with other rigid bodies that are in the same layer. Rigid bodies in collision layer -1 will collide with all other rigid bodies in the scene regardless of their collision layer.
standIn (si) enum 0 outputinputconnectablestorablekeyable
To speed up the dynamics simulation at the expense of less accuracy. Set this to use a simpler shape (such as a sphere or cube) for collisions instead of the actual geometry. A setting of NONE will use the actual geometry.
inputGeometryCnt (igc) integer 0 outputinputconnectablestorable
number of geometry shapes connected to this rigid shape.
active (act) bool true outputinputconnectablestorablekeyable
This determines whether the rigid body is treated as an active rigid body or a passive rigid body.
choice (chc) integer 0 outputinputconnectablestorablehidden
determine which selection the choice node uses
isKinematic (kin) bool false outputinputconnectablestorablehidden
determines if the rigidBody is keyframed or parented.
isKeyframed (key) bool false outputinputconnectablestorablehidden
set if the rigid body is keyframed.
isParented (par) bool false outputinputconnectablestorablehidden
set if the rigid body is parented.
particleCollision (pc) bool false outputinputconnectablestorablekeyable
If this is an active rigid body and you have setup some particles to collide with it, setting this attribute to TRUE will allow the object to move as a result of those particle collisions.
autoInit (ai) bool true outputinputconnectablestorablehidden
Turns on and off the auto initialization feature.
allowDisconnection (ad) bool false outputinputconnectablestorable
Allows the user to disconnect the connection made by the rigid body to the solver, time node and choice nodes.
cacheData (idc) bool false outputinputconnectablestorable
data is in cache flag
tessellationFactor (tes) integer 200 outputinputstorable
The tessellation factor for nurbs surfaces.
velocity (vel) double3 0, 0, 0 outputconnectablehidden
The current velocity of the rigid body.
velocityX (vx) double 0.0 outputconnectablehidden
The X component of the current velocity.
velocityY (vy) double 0.0 outputconnectablehidden
The Y component of the current velocity.
velocityZ (vz) double 0.0 outputconnectablehidden
The Z component of the current velocity.
spin (sp) double3 0, 0, 0 outputconnectablehidden
The current angular velocity of the rigid body.
spinX (spx) double 0.0 outputconnectablehidden
The X component of the current angular velocity.
spinY (spy) double 0.0 outputconnectablehidden
The Y component of the current angular velocity.
spinZ (spz) double 0.0 outputconnectablehidden
The Z component of the current angular velocity.
contactCount (cct) integer 0 outputconnectablehidden
Number of valid contact points.
contactPosition (cnp) double3 arrayoutputconnectable
Array of rigid body contact positions.
contactX (cnx) double 0.0 outputinputconnectable
X contact point
contactY (cny) double 0.0 outputinputconnectable
Y contact point
contactZ (cnz) double 0.0 outputinputconnectable
Z contact point
force (for) double3 0, 0, 0 outputconnectablehidden
The current force on the rigid body.
forceX (fx) double 0.0 outputconnectablehidden
The X component of the current force on the rigid body.
forceY (fy) double 0.0 outputconnectablehidden
The Y component of the current force on the rigid body.
forceZ (fz) double 0.0 outputconnectablehidden
The Z component of the current force on the rigid body.
torque (tor) double3 0, 0, 0 outputconnectablehidden
The current torque on the rigid body.
torqueX (trx) angle (double) 0.0deg outputconnectablehidden
The X component of the current torque on the rigid body.
torqueY (try) angle (double) 0.0deg outputconnectablehidden
The Y component of the current torque on the rigid body.
torqueZ (trz) angle (double) 0.0deg outputconnectablehidden
The Z component of the current torque on the rigid body.
lastSceneTime (lst) time 0film outputinputhidden
This is the scene time for the last time the dynamics was evaluated for this rigid node.
fieldData (fld) compound n/a outputinputconnectablehidden
force data for the field forces.
fieldDataPosition (fdp) vectorArray empty outputinputconnectable
position data for fields.
fieldDataVelocity (fdv) vectorArray empty outputinputconnectable
velocity data for fields.
fieldDataMass (fdm) doubleArray empty outputinputconnectable
mass data for fields.
deltaTime (dt) time 0film outputinputconnectable
some fields may need deltaTime to compute force (i.e. Vortex).
inputForce (ifr) vectorArray empty arrayoutputinputconnectablehidden
force applied by external factors (fields) on the rigid body.
inputForceType (ift) bool false arrayoutputinputconnectablestorablehidden
Type of force (positional/non-positional) connected to rigid body.
collisionRecords (crc) genericArray empty arrayoutputinputconnectablestorable
particle collision force data
generalForce (gfr) compound n/a outputinputconnectablehidden
generalized for on the rigid body (forces and torques).
outputForce (ofr) vectorArray empty outputinputconnectable
forces on the rigid body calculated from the external and collision forces.
outputTorque (otr) vectorArray empty outputinputconnectable
torques on the rigid body calculated from the external and collision forces.
solverId (sid) integer -1 outputinputconnectablestorablehidden
this is the index into the solver multi attributes.
bakeSimulationIndex (bsi) integer -1 outputinputconnectablestorablehidden
Indicates the choice selection index during a bake simulation.
shapeChanged (sc) integer false outputconnectablehidden
Indicates that the shape has changed and needs updating. This is an internal attribute that should not be modified by the user.
lockCenterOfMass (lcm) bool false outputinputconnectablestorablekeyable
Locks the center of mass of the rigid body so that it is not automatically recalculated if the object is modified.
ignore (ign) bool false outputinputconnectablestorablekeyable
The rigid body is ignored in the simulator if true.
collisions (col) bool true outputinputconnectablestorablekeyable
Turns collisions off if set false
applyForceAt (afa) enum 1 outputinputconnectablestorablekeyable
Determines at what points to apply forces to the rigid body.
debugDraw (dd) bool false outputinputconnectablestorablehidden
Draws the rigid body mesh. Used for debugging only.