CommonLibVR
hkpLimitedHingeConstraintData.h
Go to the documentation of this file.
1 #pragma once
2 
6 
7 namespace RE
8 {
10  {
11  public:
13  {
14  kMotor = 0,
17 
20 
24 
25  kNUM
26  };
27 
28  inline static constexpr auto RTTI = RTTI_hkpLimitedHingeConstraintData;
29  inline static constexpr auto VTABLE = VTABLE_hkpLimitedHingeConstraintData;
30 
31  struct Atoms
32  {
40  };
41  static_assert(sizeof(Atoms) == 0xF0);
42 
43  struct Runtime
44  {
45  inline float getCurrentAngle()
46  {
47  return solverResults[SolverResultType::kLimit].data * -1.f;
48  }
49 
50  hkpSolverResults solverResults[SolverResultType::kNUM]; // 00
52  float previousTargetAngle; // 44
53  };
54  static_assert(sizeof(Runtime) == 0x48);
55 
56  // members
57  Atoms atoms; // 18
58  private:
59  KEEP_FOR_RE()
60  };
61  static_assert(sizeof(hkpLimitedHingeConstraintData) == 0x110);
62 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: hkpConstraintData.h:11
Definition: hkpLimitedHingeConstraintData.h:10
Atoms atoms
Definition: hkpLimitedHingeConstraintData.h:54
SolverResultType
Definition: hkpLimitedHingeConstraintData.h:13
@ kLinear0
Definition: hkpLimitedHingeConstraintData.h:21
@ kMotor
Definition: hkpLimitedHingeConstraintData.h:14
@ kAngle1
Definition: hkpLimitedHingeConstraintData.h:19
@ kAngle0
Definition: hkpLimitedHingeConstraintData.h:18
@ kLinear2
Definition: hkpLimitedHingeConstraintData.h:23
@ kNUM
Definition: hkpLimitedHingeConstraintData.h:25
@ kLimit
Definition: hkpLimitedHingeConstraintData.h:16
@ kLinear1
Definition: hkpLimitedHingeConstraintData.h:22
@ kFriction
Definition: hkpLimitedHingeConstraintData.h:15
static constexpr auto RTTI
Definition: hkpLimitedHingeConstraintData.h:28
static constexpr auto VTABLE
Definition: hkpLimitedHingeConstraintData.h:29
Definition: hkpSolverResults.h:6
float data
Definition: hkpSolverResults.h:10
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_hkpLimitedHingeConstraintData(static_cast< std::uint64_t >(689871))
constexpr std::array< REL::ID, 1 > VTABLE_hkpLimitedHingeConstraintData
Definition: Offsets_VTABLE.h:14261
Definition: hkpConstraintAtom.h:99
Definition: hkpConstraintAtom.h:145
Definition: hkpConstraintAtom.h:105
Definition: hkpConstraintAtom.h:154
Definition: hkpConstraintAtom.h:81
Definition: hkpLimitedHingeConstraintData.h:32
struct hkp2dAngConstraintAtom twoDAng
Definition: hkpLimitedHingeConstraintData.h:38
struct hkpAngFrictionConstraintAtom angFriction
Definition: hkpLimitedHingeConstraintData.h:36
struct hkpAngMotorConstraintAtom angMotor
Definition: hkpLimitedHingeConstraintData.h:35
struct hkpSetLocalTransformsConstraintAtom transforms
Definition: hkpLimitedHingeConstraintData.h:33
struct hkpAngLimitConstraintAtom angLimit
Definition: hkpLimitedHingeConstraintData.h:37
struct hkpSetupStabilizationAtom setupStabilization
Definition: hkpLimitedHingeConstraintData.h:34
struct hkpBallSocketConstraintAtom ballSocket
Definition: hkpLimitedHingeConstraintData.h:39
Definition: hkpLimitedHingeConstraintData.h:44
bool previousTargetInitialized
Definition: hkpLimitedHingeConstraintData.h:51
float previousTargetAngle
Definition: hkpLimitedHingeConstraintData.h:52
hkpSolverResults solverResults[SolverResultType::kNUM]
Definition: hkpLimitedHingeConstraintData.h:50
float getCurrentAngle()
Definition: hkpLimitedHingeConstraintData.h:45
Definition: hkpConstraintAtom.h:91
Definition: hkpConstraintAtom.h:73