Rigid body shape used in the Bullet dynamics system. This node is from the Bullet plug-in.
Node name | Parents | MFn type | Compatible function sets |
---|---|---|---|
bulletRigidBodyShape | MPxLocatorNode |
The bulletRigidBodyShape Node has 41 attributes:
Long name (short name) | Type | Default | Flags |
---|---|---|---|
bodyType (bdytyp) |
enum | 1 | input connectable storable |
Type of motion characteristics for this body.
|
|||
neverSleeps (notslp) |
bool | false | input connectable storable |
Dynamic rigid body never sleeps/deactivates. This is for optimization purposes and can help to stop the lasting simmering motion. If never sleeps is enabled, the dynamic rigid body will always participate in the simulation. If never sleeps is disabled, the rigid body will no longer participate in the simulation if its linear velocity's magnitude is below 0.8 and angular velocity's magnitude is below 1.0. The velocity thresholds are currently not exposed for user control. The rigid body will re-engage if it receives an impact. | |||
mass (ms) |
float | 1.0 | input connectable storable keyable |
Mass of the object. If mass=0, then rigid body turns kinematic (hand-animatable). | |||
centerOfMass (com) |
float3 | 0.0, 0.0, 0.0 | input connectable storable |
Center of mass for the object used as the rotational pivot. | |||
linearDamping (lindamp) |
float | 0.0 | input connectable storable keyable |
Linear damping for the body | |||
angularDamping (angdamp) |
float | 0.0 | input connectable storable keyable |
Angular damping for the body | |||
friction (fric) |
float | 1.0 | input connectable storable keyable |
Friction for the body | |||
restitution (restit) |
float | 0.0 | input connectable storable keyable |
Restitution for the body | |||
initiallySleeping (initslp) |
bool | false | input connectable storable readable |
Dynamic rigid body starts off in a sleeping/deactivated state. This is for optimization purposes. Initially sleeping only affects dynamic rigid bodies that are initially stationary. If initially sleeping is enabled, the stationary dynamic rigid body won't participate in the simulation from the start until it receives an impact. If initially sleeping is disabled, the stationary dynamic rigid body will participate in the simulation from the start. | |||
initialVelocity (iv) |
float3 | 0.0, 0.0, 0.0 | input connectable storable |
Initial velocity of the object |
|||
initialAngularVelocity (iav) |
float3 | 0.0, 0.0, 0.0 | input connectable storable |
Initial angular (rotational) velocity of the object | |||
inWorldMatrix (inwmat) |
matrix | input connectable storable | |
Initial position for dynamic rigid bodies, and specified position for kinematic ones. | |||
impulse (i) |
float3 | 0.0, 0.0, 0.0 | input connectable storable keyable |
Impulse force applied to the object at a specified time | |||
impulsePosition (ip) |
float3 | 0.0, 0.0, 0.0 | input connectable storable keyable |
Position where impulse force will be applied to the object relative to the center of mass at a specified time. | |||
torqueImpulse (ti) |
float3 | 0.0, 0.0, 0.0 | input connectable storable keyable |
Torque (rotational) impulse force applied to the object at a specified time | |||
colliderShapeType (colshtyp) |
enum | 1 | input connectable storable |
Collider primitive or generated collider used as the collider shape for the RigidBody.
|
|||
inMesh (imesh) |
mesh | input hidden connectable storable | |
input mesh for the collision object as a mesh | |||
axis (axis) |
enum | 1 | input connectable storable |
Axis specified for rigid body collision shape of cylinder or capsule type.
|
|||
length (len) |
float | 1.0 | input connectable storable |
length of the rigid body collision object | |||
radius (rad) |
float | 0.5 | input connectable storable |
radius of the rigid body collision object | |||
extents (ext) |
float3 | 1.0, 1.0, 1.0 | input connectable storable |
extents of the bounding box for the rigid body collision object | |||
currentTime (ct) |
time | input hidden connectable storable | |
Current time for the shape. | |||
startTime (st) |
time | input hidden connectable storable | |
Initializing time for the shape. REVISIT | |||
inParentInverseMatrix (inpim) |
matrix | input connectable storable | |
The RigidBody parent inverse matrix used to calculate the local-space values for outSolvedTranslate and outSolvedRotate | |||
solverInitialized (solinit) |
BulletSolverData::id | input connectable storable | |
SolverData pointer to the initialized solver. Also makes sure data processed in the correct order for new/delete and add/remove. | |||
solverUpdated (solup) |
BulletSolverData::id | input connectable storable | |
stub parameter noting that the solver has been updated for the current timestep | |||
collisionFilterGroup (cfg) |
int | 0 | input storable |
The collision filter group determines the collision groups for this rigid body, by default the rigid body belongs to the DefaultFilter group. The first 16 bits of the integer determine the collision filter groups. The display names for the collision filter groups are defined by the Bullet Solver's collision filters attribute. | |||
collisionFilterMask (cfm) |
int | 0 | input storable |
The collision filter mask determines which other rigid bodies may collide with this body, by default this rigid body will collide with bodies belonging to the DefaultFilter group. The first 16 bits of the integer determine the collision filter mask. The display names for the collision filter masks are defined by the Bullet Solver's collision filters attribute. | |||
outColliderData (coldata) |
BulletColliderData::id | connectable storable output | |
Collider shape data (output) | |||
outRigidBodyData (rbdata) |
BulletRigidBodyData::id | connectable storable output | |
Rigid body data (output) | |||
isDrivenBySimulation (isdriven) |
bool | false | connectable storable output |
Returns if Rigid Body is driven by the simulation or uses the keyed value for a particular frame. Value determined by frame number, rigid body type, and mass value. Used to connect to pairBlend weight. | |||
outPreSolverWorldTranslate (psowt) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Pre-solved translation (world-space coords) for dynamic rigid body before updated by solver (output) | |||
outPreSolverWorldRotate (psowr) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Pre-solved rotation (world-space coords) for dynamic rigid body before updated by solver (output) | |||
outPreSolverWorldScale (psows) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Pre-solved scale (world-space coords) for dynamic rigid body before updated by solver (output) | |||
outSolvedTranslate (sot) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Solved translation (local-space coords) for dynamic rigid body. Values returned if driven by simulation. (output) | |||
outSolvedRotate (sor) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Solved rotation (local-space coords) for dynamic rigid body. Values returned if driven by simulation. (output) | |||
outPreSolverWorldTranslate (psowt) |
point | readable output connectable | |
Pre-solved translation (world-space coords) for dynamic rigid body before updated by solver (output) | |||
outPreSolverWorldRotate (psowr) |
point | readable output connectable | |
Pre-solved rotation (world-space coords) for dynamic rigid body before updated by solver (output) | |||
outPreSolverWorldScale (psows) |
point | readable output connectable | |
Pre-solved scale (world-space coords) for dynamic rigid body before updated by solver (output) | |||
outSolvedWorldTranslate (sowt) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Solved translation (world-space coords) for dynamic rigid body. Values always returned. (output) | |||
outSolvedWorldRotate (sowr) |
float3 | 0.0, 0.0, 0.0 | connectable storable output |
Solved rotation (world-space coords) for dynamic rigid body. Values always returned. (output) |