CommonLibSSE (Parapets fork)
RE::hkpMotion Class Referenceabstract

#include <hkpMotion.h>

Inheritance diagram for RE::hkpMotion:
RE::hkReferencedObject RE::hkBaseObject RE::hkpKeyframedRigidMotion RE::hkpFixedRigidMotion RE::hkpMaxSizeMotion

Public Types

enum  { kNumInactiveFramesToDeactivate = 5 }
 
enum class  MotionType {
  kInvalid , kDynamic , kSphereInertia , kBoxInertia ,
  kKeyframed , kFixed , kThinBoxInertia , kCharacter ,
  kTotal
}
 
- Public Types inherited from RE::hkReferencedObject
enum class  LockMode { kNone = 0 , kAuto , kManual }
 
enum  { kMemSize = 0x7FFF }
 

Public Member Functions

 ~hkpMotion () override
 
virtual void SetMass (float a_mass)
 
virtual void SetMassInv (float a_massInv)
 
virtual void GetInertiaLocal (hkMatrix3 &a_inertiaOut) const =0
 
virtual void GetInertiaWorld (hkMatrix3 &a_inertiaOut) const =0
 
virtual void SetInertiaLocal (const hkMatrix3 &a_inertia)=0
 
virtual void SetInertiaInvLocal (const hkMatrix3 &a_inertiaInv)=0
 
virtual void GetInertiaInvLocal (hkMatrix3 &a_inertiaInvOut) const =0
 
virtual void GetInertiaInvWorld (hkMatrix3 &a_inertiaInvOut) const =0
 
virtual void SetCenterOfMassInLocal (const hkVector4 &a_centerOfMass)
 
virtual void SetPosition (const hkVector4 &a_position)
 
virtual void SetRotation (const hkQuaternion &a_rotation)
 
virtual void SetPositionAndRotation (const hkVector4 &a_position, const hkQuaternion &a_rotation)
 
virtual void SetTransform (const hkTransform &a_transform)
 
virtual void SetLinearVelocity (const hkVector4 &a_newVel)
 
virtual void SetAngularVelocity (const hkVector4 &a_newVel)
 
virtual void GetProjectedPointVelocity (const hkVector4 &a_point, const hkVector4 &a_normal, float &a_velOut, float &a_invVirtMassOut) const =0
 
virtual void ApplyLinearImpulse (const hkVector4 &a_impulse)
 
virtual void ApplyPointImpulse (const hkVector4 &a_impulse, const hkVector4 &a_point)=0
 
virtual void ApplyAngularImpulse (const hkVector4 &a_impulse)=0
 
virtual void ApplyForce (const float a_deltaTime, const hkVector4 &a_force)=0
 
virtual void ApplyForce (const float a_deltaTime, const hkVector4 &a_force, const hkVector4 &a_point)=0
 
virtual void ApplyTorque (const float a_deltaTime, const hkVector4 &a_torque)=0
 
virtual void GetMotionStateAndVelocitiesAndDeactivationType (hkpMotion *a_motionOut)
 
- Public Member Functions inherited from RE::hkReferencedObject
 hkReferencedObject ()
 
 ~hkReferencedObject () override=default
 
virtual const hkClass * GetClassType () const
 
virtual void CalcContentStatistics (hkStatisticsCollector *a_collector, const hkClass *a_class) const
 
void AddReference () const
 
std::int32_t GetAllocatedSize () const
 
std::int32_t GetReferenceCount () const
 
void RemoveReference () const
 
- Public Member Functions inherited from RE::hkBaseObject
virtual ~hkBaseObject ()=default
 

Public Attributes

stl::enumeration< MotionType, std::uint8_t > type
 
std::uint8_t deactivationIntegrateCounter
 
std::uint16_t deactivationNumInactiveFrames [2]
 
std::uint16_t pad016
 
std::uint64_t pad018
 
hkMotionState motionState
 
hkVector4 inertiaAndMassInv
 
hkVector4 linearVelocity
 
hkVector4 angularVelocity
 
hkVector4 deactivationRefPosition [2]
 
std::uint32_t deactivationRefOrientation [2]
 
hkpMaxSizeMotionmavedMotion
 
std::uint16_t savedQualityTypeIndex
 
std::uint16_t pad132
 
hkHalf gravityFactor
 
std::uint64_t pad138
 
- Public Attributes inherited from RE::hkReferencedObject
std::uint16_t memSizeAndFlags
 
volatile std::int16_t referenceCount
 
std::uint32_t pad0C
 

Static Public Attributes

static constexpr auto RTTI = RTTI_hkpMotion
 
- Static Public Attributes inherited from RE::hkReferencedObject
static constexpr auto RTTI = RTTI_hkReferencedObject
 
- Static Public Attributes inherited from RE::hkBaseObject
static constexpr auto RTTI = RTTI_hkBaseObject
 

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kNumInactiveFramesToDeactivate 

◆ MotionType

Enumerator
kInvalid 
kDynamic 
kSphereInertia 
kBoxInertia 
kKeyframed 
kFixed 
kThinBoxInertia 
kCharacter 
kTotal 

Constructor & Destructor Documentation

◆ ~hkpMotion()

RE::hkpMotion::~hkpMotion ( )
override

Member Function Documentation

◆ ApplyAngularImpulse()

virtual void RE::hkpMotion::ApplyAngularImpulse ( const hkVector4 a_impulse)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ ApplyForce() [1/2]

virtual void RE::hkpMotion::ApplyForce ( const float  a_deltaTime,
const hkVector4 a_force 
)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ ApplyForce() [2/2]

virtual void RE::hkpMotion::ApplyForce ( const float  a_deltaTime,
const hkVector4 a_force,
const hkVector4 a_point 
)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ ApplyLinearImpulse()

virtual void RE::hkpMotion::ApplyLinearImpulse ( const hkVector4 a_impulse)
virtual

Reimplemented in RE::hkpKeyframedRigidMotion.

◆ ApplyPointImpulse()

virtual void RE::hkpMotion::ApplyPointImpulse ( const hkVector4 a_impulse,
const hkVector4 a_point 
)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ ApplyTorque()

virtual void RE::hkpMotion::ApplyTorque ( const float  a_deltaTime,
const hkVector4 a_torque 
)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ GetInertiaInvLocal()

virtual void RE::hkpMotion::GetInertiaInvLocal ( hkMatrix3 a_inertiaInvOut) const
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ GetInertiaInvWorld()

virtual void RE::hkpMotion::GetInertiaInvWorld ( hkMatrix3 a_inertiaInvOut) const
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ GetInertiaLocal()

virtual void RE::hkpMotion::GetInertiaLocal ( hkMatrix3 a_inertiaOut) const
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ GetInertiaWorld()

virtual void RE::hkpMotion::GetInertiaWorld ( hkMatrix3 a_inertiaOut) const
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ GetMotionStateAndVelocitiesAndDeactivationType()

virtual void RE::hkpMotion::GetMotionStateAndVelocitiesAndDeactivationType ( hkpMotion a_motionOut)
virtual

◆ GetProjectedPointVelocity()

virtual void RE::hkpMotion::GetProjectedPointVelocity ( const hkVector4 a_point,
const hkVector4 a_normal,
float &  a_velOut,
float &  a_invVirtMassOut 
) const
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ SetAngularVelocity()

virtual void RE::hkpMotion::SetAngularVelocity ( const hkVector4 a_newVel)
virtual

Reimplemented in RE::hkpFixedRigidMotion.

◆ SetCenterOfMassInLocal()

virtual void RE::hkpMotion::SetCenterOfMassInLocal ( const hkVector4 a_centerOfMass)
virtual

◆ SetInertiaInvLocal()

virtual void RE::hkpMotion::SetInertiaInvLocal ( const hkMatrix3 a_inertiaInv)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ SetInertiaLocal()

virtual void RE::hkpMotion::SetInertiaLocal ( const hkMatrix3 a_inertia)
pure virtual

Implemented in RE::hkpKeyframedRigidMotion.

◆ SetLinearVelocity()

virtual void RE::hkpMotion::SetLinearVelocity ( const hkVector4 a_newVel)
virtual

Reimplemented in RE::hkpFixedRigidMotion.

◆ SetMass()

virtual void RE::hkpMotion::SetMass ( float  a_mass)
virtual

Reimplemented in RE::hkpKeyframedRigidMotion.

◆ SetMassInv()

virtual void RE::hkpMotion::SetMassInv ( float  a_massInv)
virtual

Reimplemented in RE::hkpKeyframedRigidMotion.

◆ SetPosition()

virtual void RE::hkpMotion::SetPosition ( const hkVector4 a_position)
virtual

◆ SetPositionAndRotation()

virtual void RE::hkpMotion::SetPositionAndRotation ( const hkVector4 a_position,
const hkQuaternion a_rotation 
)
virtual

◆ SetRotation()

virtual void RE::hkpMotion::SetRotation ( const hkQuaternion a_rotation)
virtual

◆ SetTransform()

virtual void RE::hkpMotion::SetTransform ( const hkTransform a_transform)
virtual

Member Data Documentation

◆ angularVelocity

hkVector4 RE::hkpMotion::angularVelocity

◆ deactivationIntegrateCounter

std::uint8_t RE::hkpMotion::deactivationIntegrateCounter

◆ deactivationNumInactiveFrames

std::uint16_t RE::hkpMotion::deactivationNumInactiveFrames[2]

◆ deactivationRefOrientation

std::uint32_t RE::hkpMotion::deactivationRefOrientation[2]

◆ deactivationRefPosition

hkVector4 RE::hkpMotion::deactivationRefPosition[2]

◆ gravityFactor

hkHalf RE::hkpMotion::gravityFactor

◆ inertiaAndMassInv

hkVector4 RE::hkpMotion::inertiaAndMassInv

◆ linearVelocity

hkVector4 RE::hkpMotion::linearVelocity

◆ mavedMotion

hkpMaxSizeMotion* RE::hkpMotion::mavedMotion

◆ motionState

hkMotionState RE::hkpMotion::motionState

◆ pad016

std::uint16_t RE::hkpMotion::pad016

◆ pad018

std::uint64_t RE::hkpMotion::pad018

◆ pad132

std::uint16_t RE::hkpMotion::pad132

◆ pad138

std::uint64_t RE::hkpMotion::pad138

◆ RTTI

constexpr auto RE::hkpMotion::RTTI = RTTI_hkpMotion
inlinestaticconstexpr

◆ savedQualityTypeIndex

std::uint16_t RE::hkpMotion::savedQualityTypeIndex

◆ type

stl::enumeration<MotionType, std::uint8_t> RE::hkpMotion::type

The documentation for this class was generated from the following file: