usdrt::PhysxSchemaPhysxRigidBodyAPI

Defined in usdrt/scenegraph/usd/physxSchema/physxRigidBodyAPI.h

Functions

Variables

class PhysxSchemaPhysxRigidBodyAPI : public usdrt::UsdAPISchemaBase

PhysX rigid body extended parameters.

Public Functions

inline explicit PhysxSchemaPhysxRigidBodyAPI(const UsdPrim &prim = UsdPrim())

Construct a PhysxSchemaPhysxRigidBodyAPI on UsdPrim prim. Equivalent to PhysxSchemaPhysxRigidBodyAPI::Get(prim.GetStage(), prim.GetPath()) for a valid prim , but will not immediately throw an error for an invalid prim.

inline explicit PhysxSchemaPhysxRigidBodyAPI(const UsdSchemaBase &schemaObj)

Construct a PhysxSchemaPhysxRigidBodyAPI on the prim held by schemaObj . Should be preferred over PhysxSchemaPhysxRigidBodyAPI(schemaObj.GetPrim()), as it preserves SchemaBase state.

inline virtual ~PhysxSchemaPhysxRigidBodyAPI()

Destructor.

inline operator bool() const

Boolean operator.

Returns

Return true if the contained prim is has this api schema applied using HasAPI, and false otherwise.

inline UsdAttribute GetLinearDampingAttr() const

Linear damping coefficient. Range: [0, inf) Units: dimensionless.

Declaration

float physxRigidBody:linearDamping = 0

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateLinearDampingAttr() const

See GetLinearDampingAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetAngularDampingAttr() const

Angular damping coefficient. Range: [0, inf) Units: dimensionless.

Declaration

float physxRigidBody:angularDamping = 0.05

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateAngularDampingAttr() const

See GetAngularDampingAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetMaxLinearVelocityAttr() const

Maximum allowable linear velocity for the rigid body. Range: [0, inf) Units: distance / seconds.

Declaration

float physxRigidBody:maxLinearVelocity = inf

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateMaxLinearVelocityAttr() const

See GetMaxLinearVelocityAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetMaxAngularVelocityAttr() const

Maximum allowable angular velocity for rigid body. Range: [0, inf) Units: degrees / seconds.

Declaration

float physxRigidBody:maxAngularVelocity = 5729.58

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateMaxAngularVelocityAttr() const

See GetMaxAngularVelocityAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSleepThresholdAttr() const

Mass-normalized kinetic energy threshold below which an actor may go to sleep. Range: [0, inf) Default: 0.00005 * tolerancesSpeed * tolerancesSpeed Units: distance * distance / seconds / seconds.

Declaration

float physxRigidBody:sleepThreshold = 0.00005

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateSleepThresholdAttr() const

See GetSleepThresholdAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetStabilizationThresholdAttr() const

Mass-normalized kinetic energy threshold below which an actor may participate in stabilization. Range: [0, inf) Default: 0.00001 * tolerancesSpeed * tolerancesSpeed Units: distance * distance / seconds / seconds.

Declaration

float physxRigidBody:stabilizationThreshold = 0.00001

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateStabilizationThresholdAttr() const

See GetStabilizationThresholdAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetMaxDepenetrationVelocityAttr() const

The maximum depenetration velocity permitted to be introduced by the solver. Range: [0, inf) Default: 5.0 * tolerancesLength Units: distance / seconds.

Declaration

float physxRigidBody:maxDepenetrationVelocity = 3

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateMaxDepenetrationVelocityAttr() const

See GetMaxDepenetrationVelocityAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetMaxContactImpulseAttr() const

Sets a limit on the impulse that may be applied at a contact. The maximum impulse at a contact between two dynamic or kinematic bodies will be the minimum of the two limit values. For a collision between a static and a dynamic body, the impulse is limited by the value for the dynamic body. Range: [0, inf) Units: force * seconds = mass * distance / seconds.

Declaration

float physxRigidBody:maxContactImpulse = inf

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateMaxContactImpulseAttr() const

See GetMaxContactImpulseAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSolverPositionIterationCountAttr() const

Solver position iteration counts for the body. Allowed range [1, 255].

Declaration

int physxRigidBody:solverPositionIterationCount = 16

C++ Type

int

Usd Type

SdfValueTypeNames->Int

inline UsdAttribute CreateSolverPositionIterationCountAttr() const

See GetSolverPositionIterationCountAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSolverVelocityIterationCountAttr() const

Solver velocity iteration counts for the body. Allowed range [1, 255].

Declaration

int physxRigidBody:solverVelocityIterationCount = 1

C++ Type

int

Usd Type

SdfValueTypeNames->Int

inline UsdAttribute CreateSolverVelocityIterationCountAttr() const

See GetSolverVelocityIterationCountAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetEnableCCDAttr() const

Enables swept integration for the actor.

Declaration

bool physxRigidBody:enableCCD = 0

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateEnableCCDAttr() const

See GetEnableCCDAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetEnableSpeculativeCCDAttr() const

Register a rigid body to dynamically adjust contact offset based on velocity. This can be used to achieve a CCD effect.

Declaration

bool physxRigidBody:enableSpeculativeCCD = 0

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateEnableSpeculativeCCDAttr() const

See GetEnableSpeculativeCCDAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetRetainAccelerationsAttr() const

Carries over forces/accelerations between frames, rather than clearing them.

Declaration

bool physxRigidBody:retainAccelerations = 0

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateRetainAccelerationsAttr() const

See GetRetainAccelerationsAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetEnableGyroscopicForcesAttr() const

Enables computation of gyroscopic forces on the rigid body.

Declaration

bool physxRigidBody:enableGyroscopicForces = 1

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateEnableGyroscopicForcesAttr() const

See GetEnableGyroscopicForcesAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetDisableGravityAttr() const

Disable gravity for the actor.

Declaration

bool physxRigidBody:disableGravity = 0

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateDisableGravityAttr() const

See GetDisableGravityAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetSolveContactAttr() const

Process the contacts of this rigid body in the dynamics solver.

Declaration

bool physxRigidBody:solveContact = 1

C++ Type

bool

Usd Type

SdfValueTypeNames->Bool

inline UsdAttribute CreateSolveContactAttr() const

See GetSolveContactAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetLockedPosAxisAttr() const

Collection of flags providing a mechanism to lock motion along/around a specific axis (1 << 0, 1 << 1, 1 << 2).

Declaration

int physxRigidBody:lockedPosAxis = 0

C++ Type

int

Usd Type

SdfValueTypeNames->Int

inline UsdAttribute CreateLockedPosAxisAttr() const

See GetLockedPosAxisAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetLockedRotAxisAttr() const

Collection of flags providing a mechanism to lock motion along/around a specific axis (1 << 0, 1 << 1, 1 << 2).

Declaration

int physxRigidBody:lockedRotAxis = 0

C++ Type

int

Usd Type

SdfValueTypeNames->Int

inline UsdAttribute CreateLockedRotAxisAttr() const

See GetLockedRotAxisAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetContactSlopCoefficientAttr() const

Tolerance on the angular influence of a contact that can help improve the behavior of rolling approximate collision shapes. Specifically, the angular component of a normal constraint in a contact is zeroed if normal.cross(offset) falls below this tolerance. The tolerance is scaled such that the behavior improvement persists through a range of angular velocities of a rolling shape. Range: [0, inf) Units: distance.

Declaration

float physxRigidBody:contactSlopCoefficient = 0

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateContactSlopCoefficientAttr() const

See GetContactSlopCoefficientAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

inline UsdAttribute GetCfmScaleAttr() const

The cfm scale term can help stabilize an articulation by weakening the constraint’s response. Use small values close to the default and typically in the range [0, 0.1] for best results. Note that this parameter is currently used only if rigid body is part of an articulation. Range: [0, 1] Units: unitless.

Declaration

float physxRigidBody:cfmScale = 0.025

C++ Type

float

Usd Type

SdfValueTypeNames->Float

inline UsdAttribute CreateCfmScaleAttr() const

See GetCfmScaleAttr(), and also Create vs Get Property Methods for when to use Get vs Create. If specified, author defaultValue as the attribute’s default, sparsely (when it makes sense to do so) if writeSparsely is true - the default for writeSparsely is false.

UsdPrim GetPrim() const

Return this schema object’s held prim.

SdfPath GetPath() const

Return the SdfPath to this schema object’s held prim.

Public Static Functions

static inline PhysxSchemaPhysxRigidBodyAPI Apply(const UsdPrim &prim)

Applies this single-apply API schema to the given prim. This information is stored by adding “PhysxRigidBodyAPI” to the token-valued, listOp metadata apiSchemas on the prim.

See also

UsdPrim::GetAppliedSchemas()

See also

UsdPrim::HasAPI()

See also

UsdPrim::ApplyAPI()

See also

UsdPrim::RemoveAPI()

Returns

A valid PhysxSchemaPhysxRigidBodyAPI object is returned upon success. An invalid (or empty) PhysxSchemaPhysxRigidBodyAPI object is returned upon failure. See UsdPrim::ApplyAPI() for conditions resulting in failure.

Public Static Attributes

static const UsdSchemaType schemaType = UsdSchemaType::SingleApplyAPI

Compile time constant representing what kind of schema this class is.

See also

UsdSchemaType

Protected Functions

inline const TfToken &_GetInstanceName() const

Returns the instance name of the API schema object belonging to a multiple-apply API schema.

The returned instance name will be empty for non-applied and single-apply API schemas.