CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
hkpEntity.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/H/hkArray.h"
4#include "RE/H/hkBaseTypes.h"
5#include "RE/H/hkSmallArray.h"
7#include "RE/H/hkpMaterial.h"
9
10namespace RE
11{
12 class hkLocalFrame;
13 class hkSpuCollisionCallbackUtil;
14 class hkpAction;
15 class hkpBreakableBody;
16 class hkpContactListener;
17 class hkpEntityActivationListener;
18 class hkpEntityListener;
19 class hkpSimulationIsland;
20 struct hkConstraintInternal;
21
23 {
24 public:
25 inline static constexpr auto RTTI = RTTI_hkpEntity;
26
28 {
29 kNone = 0,
30 kContactPointAdded = 1 << 0,
31 kContactPointProcess = 1 << 1,
32 kContactPointRemoved = 1 << 2,
34 };
35
37 {
38 public:
39 // members
40 void* data; // 00
41 std::uint16_t size; // 08
42 std::uint16_t capacityAndFlags; // 0A
43 std::uint32_t pad0C; // 0C
44 };
45 static_assert(sizeof(SmallArraySerializeOverrideType) == 0x10);
46
48 {
49 public:
50 // members
51 hkSpuCollisionCallbackUtil* util; // 00
52 std::uint16_t capacity; // 08
54 std::uint8_t userFilter; // 0B
55 std::uint32_t pad0C; // 0C
56 };
57 static_assert(sizeof(SpuCollisionCallback) == 0x10);
58
60 {
61 public:
62 // members
65 };
66 static_assert(sizeof(ExtendedListeners) == 0x20);
67
68 ~hkpEntity() override; // 00
69
70 // override (hkpWorldObject)
71 void CalcContentStatistics(hkStatisticsCollector* a_collector, const hkClass* a_class) const override; // 02
72 hkMotionState* GetMotionState() override; // 05 - { return 0; }
73
74 // add
75 virtual void DeallocateInternalArrays(); // 06
76
77 // members
79 std::uint32_t pad00C; // 0DC
81 float damageMultiplier; // 0E8
82 std::uint32_t pad01C; // 0EC
83 hkpBreakableBody* breakableBody; // 0F0
84 std::uint32_t solverData; // 0F8
86 std::uint16_t contactPointCallbackDelay; // 0FE
91 std::int8_t autoRemoveLevel; // 138
93 std::uint8_t responseModifierFlags; // 13A
94 std::uint8_t pad13B; // 13B
95 std::uint32_t uid; // 13C
102 std::uint32_t npData; // 2C0
103 std::uint32_t pad2C4; // 2C4
104 std::uint64_t pad2C8; // 2C8
105 };
106 static_assert(sizeof(hkpEntity) == 0x2D0);
107}
Definition: hkArray.h:189
Definition: hkMotionState.h:11
Definition: hkRefPtr.h:7
Definition: hkSmallArray.h:7
std::uint32_t pad0C
Definition: hkpEntity.h:43
void * data
Definition: hkpEntity.h:40
std::uint16_t capacityAndFlags
Definition: hkpEntity.h:42
std::uint16_t size
Definition: hkpEntity.h:41
Definition: hkpEntity.h:23
std::uint8_t responseModifierFlags
Definition: hkpEntity.h:93
hkArray< std::uint8_t > constraintRuntime
Definition: hkpEntity.h:89
static constexpr auto RTTI
Definition: hkpEntity.h:25
SpuCollisionCallback spuCollisionCallback
Definition: hkpEntity.h:96
void * limitContactImpulseUtilAndFlag
Definition: hkpEntity.h:80
hkSmallArray< hkpAction * > actions
Definition: hkpEntity.h:99
float damageMultiplier
Definition: hkpEntity.h:81
std::uint32_t npData
Definition: hkpEntity.h:102
ExtendedListeners * extendedListeners
Definition: hkpEntity.h:101
hkObjectIndex storageIndex
Definition: hkpEntity.h:85
hkArray< hkpConstraintInstance * > constraintsSlave
Definition: hkpEntity.h:88
std::uint8_t pad13B
Definition: hkpEntity.h:94
hkMotionState * GetMotionState() override
std::int8_t autoRemoveLevel
Definition: hkpEntity.h:91
void CalcContentStatistics(hkStatisticsCollector *a_collector, const hkClass *a_class) const override
std::uint32_t uid
Definition: hkpEntity.h:95
SpuCollisionCallbackEventFilter
Definition: hkpEntity.h:28
hkSmallArray< hkConstraintInternal > constraintsMaster
Definition: hkpEntity.h:87
hkpBreakableBody * breakableBody
Definition: hkpEntity.h:83
std::uint16_t contactPointCallbackDelay
Definition: hkpEntity.h:86
hkpMaterial material
Definition: hkpEntity.h:78
~hkpEntity() override
std::uint32_t pad00C
Definition: hkpEntity.h:79
hkRefPtr< hkLocalFrame > localFrame
Definition: hkpEntity.h:100
std::uint32_t pad2C4
Definition: hkpEntity.h:103
hkpSimulationIsland * simulationIsland
Definition: hkpEntity.h:90
std::uint64_t pad2C8
Definition: hkpEntity.h:104
hkSmallArray< hkpContactListener * > contactListeners
Definition: hkpEntity.h:98
std::uint32_t pad01C
Definition: hkpEntity.h:82
virtual void DeallocateInternalArrays()
hkpMaxSizeMotion motion
Definition: hkpEntity.h:97
std::uint32_t solverData
Definition: hkpEntity.h:84
std::uint8_t numShapeKeysInContactPointProperties
Definition: hkpEntity.h:92
Definition: hkpMaterial.h:8
Definition: hkpKeyframedRigidMotion.h:40
Definition: hkpSimulationIsland.h:16
Definition: hkpWorldObject.h:27
Definition: PCH.h:216
Definition: AbsorbEffect.h:6
std::uint16_t hkObjectIndex
Definition: hkBaseTypes.h:5
constexpr REL::ID RTTI_hkpEntity
Definition: Offsets_RTTI.h:7610
Definition: hkpEntity.h:60
hkSmallArray< hkpEntityListener * > entityListeners
Definition: hkpEntity.h:64
hkSmallArray< hkpEntityActivationListener * > activationListeners
Definition: hkpEntity.h:63
Definition: hkpEntity.h:48
std::uint8_t userFilter
Definition: hkpEntity.h:54
std::uint16_t capacity
Definition: hkpEntity.h:52
std::uint32_t pad0C
Definition: hkpEntity.h:55
hkSpuCollisionCallbackUtil * util
Definition: hkpEntity.h:51
stl::enumeration< SpuCollisionCallbackEventFilter, std::uint8_t > eventFilter
Definition: hkpEntity.h:53