Blender V4.3
btSolverBody.h File Reference

Go to the source code of this file.

Macros

#define btSimdScalar   btScalar
 Until we get other contributions, only use SIMD on Windows, when using Visual Studio 2008 or later, and not double precision.
 

Functions

void setWorldTransform (const btTransform &worldTransform)
 
const btTransformgetWorldTransform () const
 
SIMD_FORCE_INLINE void getVelocityInLocalPointNoDelta (const btVector3 &rel_pos, btVector3 &velocity) const
 
SIMD_FORCE_INLINE void getVelocityInLocalPointObsolete (const btVector3 &rel_pos, btVector3 &velocity) const
 
SIMD_FORCE_INLINE void getAngularVelocity (btVector3 &angVel) const
 
SIMD_FORCE_INLINE void applyImpulse (const btVector3 &linearComponent, const btVector3 &angularComponent, const btScalar impulseMagnitude)
 
SIMD_FORCE_INLINE void internalApplyPushImpulse (const btVector3 &linearComponent, const btVector3 &angularComponent, btScalar impulseMagnitude)
 
const btVector3getDeltaLinearVelocity () const
 
const btVector3getDeltaAngularVelocity () const
 
const btVector3getPushVelocity () const
 
const btVector3getTurnVelocity () const
 
btVector3internalGetDeltaLinearVelocity ()
 some internal methods, don't use them
 
btVector3internalGetDeltaAngularVelocity ()
 
const btVector3internalGetAngularFactor () const
 
const btVector3internalGetInvMass () const
 
void internalSetInvMass (const btVector3 &invMass)
 
btVector3internalGetPushVelocity ()
 
btVector3internalGetTurnVelocity ()
 
SIMD_FORCE_INLINE void internalGetVelocityInLocalPointObsolete (const btVector3 &rel_pos, btVector3 &velocity) const
 
SIMD_FORCE_INLINE void internalGetAngularVelocity (btVector3 &angVel) const
 
SIMD_FORCE_INLINE void internalApplyImpulse (const btVector3 &linearComponent, const btVector3 &angularComponent, const btScalar impulseMagnitude)
 
void writebackVelocity ()
 
void writebackVelocityAndTransform (btScalar timeStep, btScalar splitImpulseTurnErp)
 

Variables

 btSolverBody
 The btSolverBody is an internal datastructure for the constraint solver. Only necessary data is packed to increase cache coherence/performance.
 
btTransform m_worldTransform
 
btVector3 m_deltaLinearVelocity
 
btVector3 m_deltaAngularVelocity
 
btVector3 m_angularFactor
 
btVector3 m_linearFactor
 
btVector3 m_invMass
 
btVector3 m_pushVelocity
 
btVector3 m_turnVelocity
 
btVector3 m_linearVelocity
 
btVector3 m_angularVelocity
 
btVector3 m_externalForceImpulse
 
btVector3 m_externalTorqueImpulse
 
btRigidBodym_originalBody
 

Macro Definition Documentation

◆ btSimdScalar

#define btSimdScalar   btScalar

Until we get other contributions, only use SIMD on Windows, when using Visual Studio 2008 or later, and not double precision.

Definition at line 99 of file btSolverBody.h.

Referenced by gResolveSplitPenetrationImpulse_sse2(), and setupTorsionalFrictionConstraint().

Function Documentation

◆ applyImpulse()

SIMD_FORCE_INLINE void applyImpulse ( const btVector3 & linearComponent,
const btVector3 & angularComponent,
const btScalar impulseMagnitude )

◆ getAngularVelocity()

SIMD_FORCE_INLINE void getAngularVelocity ( btVector3 & angVel) const

Definition at line 147 of file btSolverBody.h.

References m_angularVelocity, m_deltaAngularVelocity, and m_originalBody.

◆ getDeltaAngularVelocity()

const btVector3 & getDeltaAngularVelocity ( ) const

Definition at line 179 of file btSolverBody.h.

References m_deltaAngularVelocity.

◆ getDeltaLinearVelocity()

const btVector3 & getDeltaLinearVelocity ( ) const

Definition at line 174 of file btSolverBody.h.

References m_deltaLinearVelocity.

◆ getPushVelocity()

const btVector3 & getPushVelocity ( ) const

Definition at line 184 of file btSolverBody.h.

References m_pushVelocity.

◆ getTurnVelocity()

const btVector3 & getTurnVelocity ( ) const

Definition at line 189 of file btSolverBody.h.

References m_turnVelocity.

◆ getVelocityInLocalPointNoDelta()

SIMD_FORCE_INLINE void getVelocityInLocalPointNoDelta ( const btVector3 & rel_pos,
btVector3 & velocity ) const

◆ getVelocityInLocalPointObsolete()

SIMD_FORCE_INLINE void getVelocityInLocalPointObsolete ( const btVector3 & rel_pos,
btVector3 & velocity ) const

◆ getWorldTransform()

const btTransform & getWorldTransform ( ) const

Definition at line 126 of file btSolverBody.h.

References m_worldTransform.

◆ internalApplyImpulse()

SIMD_FORCE_INLINE void internalApplyImpulse ( const btVector3 & linearComponent,
const btVector3 & angularComponent,
const btScalar impulseMagnitude )

◆ internalApplyPushImpulse()

SIMD_FORCE_INLINE void internalApplyPushImpulse ( const btVector3 & linearComponent,
const btVector3 & angularComponent,
btScalar impulseMagnitude )

◆ internalGetAngularFactor()

const btVector3 & internalGetAngularFactor ( ) const

Definition at line 207 of file btSolverBody.h.

References m_angularFactor.

◆ internalGetAngularVelocity()

SIMD_FORCE_INLINE void internalGetAngularVelocity ( btVector3 & angVel) const

Definition at line 237 of file btSolverBody.h.

References m_angularVelocity, and m_deltaAngularVelocity.

◆ internalGetDeltaAngularVelocity()

btVector3 & internalGetDeltaAngularVelocity ( )

Definition at line 202 of file btSolverBody.h.

References m_deltaAngularVelocity.

◆ internalGetDeltaLinearVelocity()

btVector3 & internalGetDeltaLinearVelocity ( )

some internal methods, don't use them

Definition at line 197 of file btSolverBody.h.

References m_deltaLinearVelocity.

◆ internalGetInvMass()

const btVector3 & internalGetInvMass ( ) const

Definition at line 212 of file btSolverBody.h.

References m_invMass.

◆ internalGetPushVelocity()

btVector3 & internalGetPushVelocity ( )

Definition at line 222 of file btSolverBody.h.

References m_pushVelocity.

◆ internalGetTurnVelocity()

btVector3 & internalGetTurnVelocity ( )

Definition at line 227 of file btSolverBody.h.

References m_turnVelocity.

◆ internalGetVelocityInLocalPointObsolete()

SIMD_FORCE_INLINE void internalGetVelocityInLocalPointObsolete ( const btVector3 & rel_pos,
btVector3 & velocity ) const

◆ internalSetInvMass()

void internalSetInvMass ( const btVector3 & invMass)

Definition at line 217 of file btSolverBody.h.

References m_invMass.

◆ setWorldTransform()

void setWorldTransform ( const btTransform & worldTransform)

Definition at line 121 of file btSolverBody.h.

References m_worldTransform.

◆ writebackVelocity()

void writebackVelocity ( )

◆ writebackVelocityAndTransform()

Variable Documentation

◆ btSolverBody

◆ m_angularFactor

◆ m_angularVelocity

◆ m_deltaAngularVelocity

◆ m_deltaLinearVelocity

◆ m_externalForceImpulse

btVector3 m_externalForceImpulse

Definition at line 117 of file btSolverBody.h.

Referenced by getVelocityInLocalPointNoDelta(), and writeBackBodies().

◆ m_externalTorqueImpulse

btVector3 m_externalTorqueImpulse

Definition at line 118 of file btSolverBody.h.

Referenced by getVelocityInLocalPointNoDelta(), and writeBackBodies().

◆ m_invMass

◆ m_linearFactor

◆ m_linearVelocity

◆ m_originalBody

◆ m_pushVelocity

◆ m_turnVelocity

◆ m_worldTransform