64 void restoreDynamicData();
77 void setLinearVelocity(
const PxVec3& v,
bool skipBodySimUpdate=
false);
80 void setAngularVelocity(
const PxVec3& v,
bool skipBodySimUpdate=
false);
83 void setCfmScale(PxReal d);
87 mCore.linearVelocity += linearVelModPerStep;
88 mCore.angularVelocity += angularVelModPerStep;
96 void clearSpatialAcceleration(
bool force,
bool torque);
98 void clearSpatialVelocity(
bool force,
bool torque);
100 PX_FORCE_INLINE PxReal getMaxPenetrationBias()
const {
return mCore.maxPenBias; }
101 PX_FORCE_INLINE void setMaxPenetrationBias(PxReal p) { mCore.maxPenBias = p; }
103 PxReal getInverseMass()
const;
104 void setInverseMass(PxReal m);
105 const PxVec3& getInverseInertia()
const;
106 void setInverseInertia(
const PxVec3& i);
108 PxReal getLinearDamping()
const;
109 void setLinearDamping(PxReal d);
111 PxReal getAngularDamping()
const;
112 void setAngularDamping(PxReal d);
121 PX_FORCE_INLINE PxReal getSleepThreshold()
const {
return mCore.sleepThreshold; }
122 void setSleepThreshold(PxReal t);
124 PX_FORCE_INLINE PxReal getFreezeThreshold()
const {
return mCore.freezeThreshold; }
125 void setFreezeThreshold(PxReal t);
127 PX_FORCE_INLINE PxReal getMaxContactImpulse()
const {
return mCore.maxContactImpulse; }
128 void setMaxContactImpulse(PxReal m);
130 PX_FORCE_INLINE PxReal getOffsetSlop()
const {
return mCore.offsetSlop; }
131 void setOffsetSlop(PxReal slop);
135 PX_FORCE_INLINE PxReal getWakeCounter()
const {
return mCore.wakeCounter; }
136 void setWakeCounter(PxReal wakeCounter,
bool forceWakeUp=
false);
138 bool isSleeping()
const;
139 PX_FORCE_INLINE void wakeUp(PxReal wakeCounter) { setWakeCounter(wakeCounter,
true); }
142 PxReal getMaxAngVelSq()
const;
143 void setMaxAngVelSq(PxReal v);
145 PxReal getMaxLinVelSq()
const;
146 void setMaxLinVelSq(PxReal v);
148 PX_FORCE_INLINE PxU16 getSolverIterationCounts()
const {
return mCore.solverIterationCounts; }
149 void setSolverIterationCounts(PxU16 c);
152 bool getHasValidKinematicTarget()
const;
153 void setKinematicTarget(
const PxTransform& p, PxReal wakeCounter);
154 void invalidateKinematicTarget();
156 PX_FORCE_INLINE PxReal getContactReportThreshold()
const {
return mCore.contactReportThreshold; }
157 void setContactReportThreshold(PxReal t) { mCore.contactReportThreshold = t; }
159 void onOriginShift(
const PxVec3& shift);
167 PX_FORCE_INLINE void setWakeCounterFromSim(PxReal c) { mCore.wakeCounter = c; }
175 PX_FORCE_INLINE PxReal getCCDAdvanceCoefficient()
const {
return mCore.ccdAdvanceCoefficient; }
176 PX_FORCE_INLINE void setCCDAdvanceCoefficient(PxReal c) { mCore.ccdAdvanceCoefficient = c; }
178 void onRemoveKinematicFromScene();
180 PxIntBool isFrozen()
const;
184 return *
reinterpret_cast<BodyCore*
>(
reinterpret_cast<PxU8*
>(&core) - getCoreOffset());
187 void setKinematicLink(
const bool value);
189 PX_ALIGN_PREFIX(16)
PxsBodyCore mCore PX_ALIGN_SUFFIX(16);
Definition ScBodyCore.h:49
Definition ScBodySim.h:60
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39
Definition PxvDynamics.h:74