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