CommonLibSSE (powerof3)
hkpWorldCinfo.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/H/hkAabb.h"
4 #include "RE/H/hkRefPtr.h"
6 #include "RE/H/hkVector4.h"
7 
8 namespace RE
9 {
10  class hkpCollisionFilter;
11  class hkpConvexListFilter;
12  class hkWorldMemoryAvailableWatchDog;
13 
15  {
16  public:
17  inline static constexpr auto RTTI = RTTI_hkpWorldCinfo;
18  inline static constexpr auto VTABLE = VTABLE_hkpWorldCinfo;
19 
20  enum class SolverType
21  {
22  kInvalid,
32 
33  kTotal
34  };
35 
36  enum class SimulationType
37  {
38  kInvalid,
39  kDiscrete,
42  };
43 
45  {
49  };
50 
52  {
53  kAssert,
54  kFixEntity,
57  };
58 
59  enum class TreeUpdateType
60  {
61  kActive,
62  kAll
63  };
64 
65  ~hkpWorldCinfo() override; // 00
66 
67  // members
69  std::int32_t broadPhaseQuerySize; // 020
70  float contactRestingVelocity; // 024
73  std::uint16_t pad02A; // 02A
74  std::uint32_t pad02C; // 02C
76  bool useKdTree; // 050
77  bool useMultipleTree; // 051
79  bool autoUpdateKdTree; // 053
80  float collisionTolerance; // 054
84  std::int32_t sizeOfToiEventQueue; // 068
87  std::int32_t broadPhaseNumMarkers; // 080
90  bool useHybridBroadphase; // 086
91  std::uint8_t pad087; // 087
92  float solverTau; // 088
93  float solverDamp; // 08C
94  std::int32_t solverIterations; // 090
95  std::int32_t solverMicrosteps; // 094
96  float maxConstraintViolation; // 098
98  std::uint8_t pad09D; // 09D
99  std::uint16_t pad09E; // 09E
104  std::uint16_t pad0AA; // 0AA
106  std::int32_t iterativeLinearCastMaxIterations; // 0B0
109  std::uint8_t deactivationIntegrateCounter; // 0B6
113  std::int32_t maxSectorsPerMidphaseCollideTask; // 0C0
116  std::uint8_t pad0C9; // 0C9
117  std::uint16_t pad0CA; // 0CA
125  bool enableDeactivation; // 0E8
128  std::uint8_t pad0EB; // 0EB
129  std::uint32_t minDesiredIslandSize; // 0EC
132  std::uint16_t pad0F2; // 0F2
133  float frameMarkerPsiSnap; // 0F4
135  std::uint8_t pad0F9; // 0F9
136  std::uint16_t pad0FA; // 0FA
137  std::uint32_t pad0FC; // 0FC
138  };
139  static_assert(sizeof(hkpWorldCinfo) == 0x100);
140 }
Definition: hkAabb.h:8
Definition: hkRefPtr.h:7
Definition: hkReferencedObject.h:11
Definition: hkVector4.h:9
Definition: hkpWorldCinfo.h:15
float snapCollisionToConvexEdgeThreshold
Definition: hkpWorldCinfo.h:100
REX::EnumSet< ContactPointGeneration, std::int8_t > contactPointGeneration
Definition: hkpWorldCinfo.h:88
bool mtPostponeAndSortBroadPhaseBorderCallbacks
Definition: hkpWorldCinfo.h:72
std::uint16_t pad0F2
Definition: hkpWorldCinfo.h:132
bool useMultipleTree
Definition: hkpWorldCinfo.h:77
hkAabb broadPhaseWorldAabb
Definition: hkpWorldCinfo.h:75
std::uint32_t minDesiredIslandSize
Definition: hkpWorldCinfo.h:129
std::uint8_t deactivationNumInactiveFramesSelectFlag1
Definition: hkpWorldCinfo.h:108
float frameMarkerPsiSnap
Definition: hkpWorldCinfo.h:133
bool allowToSkipConfirmedCallbacks
Definition: hkpWorldCinfo.h:89
SolverType
Definition: hkpWorldCinfo.h:21
std::int32_t maxEntriesPerToiNarrowphaseCollideTask
Definition: hkpWorldCinfo.h:119
std::uint8_t pad09D
Definition: hkpWorldCinfo.h:98
std::uint16_t pad0CA
Definition: hkpWorldCinfo.h:117
std::int32_t solverMicrosteps
Definition: hkpWorldCinfo.h:95
static constexpr auto RTTI
Definition: hkpWorldCinfo.h:17
bool useHybridBroadphase
Definition: hkpWorldCinfo.h:90
bool fireCollisionCallbacks
Definition: hkpWorldCinfo.h:134
float numToisTillAllowedPenetrationToi
Definition: hkpWorldCinfo.h:122
hkRefPtr< hkpCollisionFilter > collisionFilter
Definition: hkpWorldCinfo.h:81
bool enableSimulationIslands
Definition: hkpWorldCinfo.h:127
bool shouldActivateOnRigidBodyTransformChange
Definition: hkpWorldCinfo.h:110
hkVector4 gravity
Definition: hkpWorldCinfo.h:68
std::uint8_t pad0F9
Definition: hkpWorldCinfo.h:135
hkRefPtr< hkpConvexListFilter > convexListFilter
Definition: hkpWorldCinfo.h:82
float toiCollisionResponseRotateNormal
Definition: hkpWorldCinfo.h:112
hkRefPtr< hkWorldMemoryAvailableWatchDog > memoryWatchDog
Definition: hkpWorldCinfo.h:86
std::uint8_t pad0C9
Definition: hkpWorldCinfo.h:116
float deactivationReferenceDistance
Definition: hkpWorldCinfo.h:111
std::int32_t maxEntriesPerToiMidphaseCollideTask
Definition: hkpWorldCinfo.h:118
std::uint32_t pad0FC
Definition: hkpWorldCinfo.h:137
float expectedMaxLinearVelocity
Definition: hkpWorldCinfo.h:83
std::int32_t maxSectorsPerNarrowphaseCollideTask
Definition: hkpWorldCinfo.h:114
bool forceCoherentConstraintOrderingInSolver
Definition: hkpWorldCinfo.h:97
float collisionTolerance
Definition: hkpWorldCinfo.h:80
std::uint16_t pad02A
Definition: hkpWorldCinfo.h:73
std::int32_t iterativeLinearCastMaxIterations
Definition: hkpWorldCinfo.h:106
std::uint8_t deactivationIntegrateCounter
Definition: hkpWorldCinfo.h:109
std::uint8_t pad0EB
Definition: hkpWorldCinfo.h:128
REX::EnumSet< BroadPhaseBorderBehaviour, std::int8_t > broadPhaseBorderBehaviour
Definition: hkpWorldCinfo.h:71
bool enableDeactivation
Definition: hkpWorldCinfo.h:125
std::int32_t maxSectorsPerMidphaseCollideTask
Definition: hkpWorldCinfo.h:113
~hkpWorldCinfo() override
REX::EnumSet< TreeUpdateType, std::int8_t > treeUpdateType
Definition: hkpWorldCinfo.h:78
std::int32_t solverIterations
Definition: hkpWorldCinfo.h:94
bool allowIntegrationOfIslandsWithoutConstraintsInASeparateJob
Definition: hkpWorldCinfo.h:131
float maxConstraintViolation
Definition: hkpWorldCinfo.h:96
bool autoUpdateKdTree
Definition: hkpWorldCinfo.h:79
SimulationType
Definition: hkpWorldCinfo.h:37
std::uint32_t pad02C
Definition: hkpWorldCinfo.h:74
std::int32_t broadPhaseNumMarkers
Definition: hkpWorldCinfo.h:87
std::uint16_t pad0AA
Definition: hkpWorldCinfo.h:104
float solverTau
Definition: hkpWorldCinfo.h:92
TreeUpdateType
Definition: hkpWorldCinfo.h:60
REX::EnumSet< SimulationType, std::int8_t > simulationType
Definition: hkpWorldCinfo.h:126
bool processActionsInSingleThread
Definition: hkpWorldCinfo.h:130
static constexpr auto VTABLE
Definition: hkpWorldCinfo.h:18
float iterativeLinearCastEarlyOutDistance
Definition: hkpWorldCinfo.h:105
ContactPointGeneration
Definition: hkpWorldCinfo.h:45
float snapCollisionToConcaveEdgeThreshold
Definition: hkpWorldCinfo.h:101
float expectedMinPsiDeltaTime
Definition: hkpWorldCinfo.h:85
float solverDamp
Definition: hkpWorldCinfo.h:93
std::int32_t sizeOfToiEventQueue
Definition: hkpWorldCinfo.h:84
BroadPhaseBorderBehaviour
Definition: hkpWorldCinfo.h:52
std::uint8_t pad087
Definition: hkpWorldCinfo.h:91
float contactRestingVelocity
Definition: hkpWorldCinfo.h:70
std::int32_t broadPhaseQuerySize
Definition: hkpWorldCinfo.h:69
bool enableToiWeldRejection
Definition: hkpWorldCinfo.h:102
bool useKdTree
Definition: hkpWorldCinfo.h:76
bool enableDeprecatedWelding
Definition: hkpWorldCinfo.h:103
bool processToisMultithreaded
Definition: hkpWorldCinfo.h:115
float numToisTillAllowedPenetrationSimplifiedToi
Definition: hkpWorldCinfo.h:121
std::uint8_t deactivationNumInactiveFramesSelectFlag0
Definition: hkpWorldCinfo.h:107
std::uint16_t pad09E
Definition: hkpWorldCinfo.h:99
float numToisTillAllowedPenetrationToiHigher
Definition: hkpWorldCinfo.h:123
float numToisTillAllowedPenetrationToiForced
Definition: hkpWorldCinfo.h:124
std::uint16_t pad0FA
Definition: hkpWorldCinfo.h:136
std::int32_t maxNumToiCollisionPairsSinglethreaded
Definition: hkpWorldCinfo.h:120
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_hkpWorldCinfo(static_cast< std::uint64_t >(685136))
constexpr std::array< REL::ID, 1 > VTABLE_hkpWorldCinfo
Definition: Offsets_VTABLE.h:14418