CommonLibVR
hkpConstraintMotor.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace RE
6 {
8  {
9  public:
10  enum class MotorType
11  {
12  kInvalid = 0,
13 
14  kPosition,
15  kVelocity,
16  kSpring,
17  kCallback,
18 
19  kNUM
20  };
21 
22  inline static constexpr auto RTTI = RTTI_hkpConstraintMotor;
23  inline static constexpr auto VTABLE = VTABLE_hkpConstraintMotor;
24 
25  // members
27  };
28  static_assert(sizeof(hkpConstraintMotor) == 0x18);
29 
31  {
32  public:
33  inline static constexpr auto RTTI = RTTI_hkpLimitedForceConstraintMotor;
34  inline static constexpr auto VTABLE = VTABLE_hkpLimitedForceConstraintMotor;
35 
36  // members
37  float minForce; // 18
38  float maxForce; // 1C
39  };
40  static_assert(sizeof(hkpLimitedForceConstraintMotor) == 0x20);
41 
43  {
44  public:
45  inline static constexpr auto RTTI = RTTI_hkpPositionConstraintMotor;
46  inline static constexpr auto VTABLE = VTABLE_hkpPositionConstraintMotor;
47 
48  // members
49  float tau; // 20
50  float damping; // 24
53  };
54  static_assert(sizeof(hkpPositionConstraintMotor) == 0x30);
55 
57  {
58  public:
59  inline static constexpr auto RTTI = RTTI_hkpVelocityConstraintMotor;
60  inline static constexpr auto VTABLE = VTABLE_hkpVelocityConstraintMotor;
61 
62  // members
63  float tau; // 20
64  float targetVelocity; // 24
65  bool useConstraintTarget; // 28
66  };
67  static_assert(sizeof(hkpVelocityConstraintMotor) == 0x30);
68 
70  {
71  public:
72  inline static constexpr auto RTTI = RTTI_hkpSpringDamperConstraintMotor;
73  inline static constexpr auto VTABLE = VTABLE_hkpSpringDamperConstraintMotor;
74 
75  // members
76  float springConstant; // 20
77  float springDamping; // 24
78  };
79  static_assert(sizeof(hkpSpringDamperConstraintMotor) == 0x28);
80 
82  {
83  public:
84  enum class CallbackType
85  {
86  kUnk = 0,
87 
88  kUser0,
89  kUser1,
90  kUser2,
91 
92  kNUM
93  };
94 
95  inline static constexpr auto RTTI = RTTI_hkpCallbackConstraintMotor;
96  inline static constexpr auto VTABLE = VTABLE_hkpCallbackConstraintMotor;
97 
98  using CallbackFunction = void(const hkpCallbackConstraintMotor& motor, const void* unk0, void* unk1);
99 
100  // members
103  std::uint64_t userData0; // 30
104  std::uint64_t userData1; // 38
105  std::uint64_t userData2; // 40
106  };
107  static_assert(sizeof(hkpCallbackConstraintMotor) == 0x48);
108 }
Definition: hkReferencedObject.h:11
Definition: hkpConstraintMotor.h:82
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:95
stl::enumeration< CallbackType, std::uint32_t > callbackType
Definition: hkpConstraintMotor.h:102
CallbackFunction * func
Definition: hkpConstraintMotor.h:101
std::uint64_t userData1
Definition: hkpConstraintMotor.h:104
void(const hkpCallbackConstraintMotor &motor, const void *unk0, void *unk1) CallbackFunction
Definition: hkpConstraintMotor.h:98
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:96
CallbackType
Definition: hkpConstraintMotor.h:85
std::uint64_t userData0
Definition: hkpConstraintMotor.h:103
std::uint64_t userData2
Definition: hkpConstraintMotor.h:105
Definition: hkpConstraintMotor.h:8
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:22
stl::enumeration< MotorType, uint8_t > type
Definition: hkpConstraintMotor.h:26
MotorType
Definition: hkpConstraintMotor.h:11
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:23
Definition: hkpConstraintMotor.h:31
float minForce
Definition: hkpConstraintMotor.h:37
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:33
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:34
float maxForce
Definition: hkpConstraintMotor.h:38
Definition: hkpConstraintMotor.h:43
float tau
Definition: hkpConstraintMotor.h:49
float damping
Definition: hkpConstraintMotor.h:50
float proportionalRecoveryVelocity
Definition: hkpConstraintMotor.h:51
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:45
float constantRecoveryVelocity
Definition: hkpConstraintMotor.h:52
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:46
Definition: hkpConstraintMotor.h:70
float springConstant
Definition: hkpConstraintMotor.h:76
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:72
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:73
float springDamping
Definition: hkpConstraintMotor.h:77
Definition: hkpConstraintMotor.h:57
static constexpr auto VTABLE
Definition: hkpConstraintMotor.h:60
float tau
Definition: hkpConstraintMotor.h:63
static constexpr auto RTTI
Definition: hkpConstraintMotor.h:59
float targetVelocity
Definition: hkpConstraintMotor.h:64
bool useConstraintTarget
Definition: hkpConstraintMotor.h:65
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_hkpConstraintMotor(static_cast< std::uint64_t >(689861))
constexpr std::array< REL::ID, 1 > VTABLE_hkpCallbackConstraintMotor
Definition: Offsets_VTABLE.h:14163
constexpr std::array< REL::ID, 1 > VTABLE_hkpLimitedForceConstraintMotor
Definition: Offsets_VTABLE.h:14260
constexpr REL::ID RTTI_hkpSpringDamperConstraintMotor(static_cast< std::uint64_t >(689888))
constexpr REL::ID RTTI_hkpPositionConstraintMotor(static_cast< std::uint64_t >(689887))
constexpr std::array< REL::ID, 1 > VTABLE_hkpSpringDamperConstraintMotor
Definition: Offsets_VTABLE.h:14367
constexpr REL::ID RTTI_hkpLimitedForceConstraintMotor(static_cast< std::uint64_t >(689885))
constexpr std::array< REL::ID, 1 > VTABLE_hkpConstraintMotor
Definition: Offsets_VTABLE.h:14200
constexpr REL::ID RTTI_hkpCallbackConstraintMotor(static_cast< std::uint64_t >(689886))
constexpr std::array< REL::ID, 1 > VTABLE_hkpPositionConstraintMotor
Definition: Offsets_VTABLE.h:14315
constexpr std::array< REL::ID, 1 > VTABLE_hkpVelocityConstraintMotor
Definition: Offsets_VTABLE.h:14415
constexpr REL::ID RTTI_hkpVelocityConstraintMotor(static_cast< std::uint64_t >(689889))