CommonLibSSE NG
Loading...
Searching...
No Matches
hkpShapePhantom.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/H/hkpPhantom.h"
5
6namespace RE
7{
8 class hkTransform;
9 class hkpCdBodyPairCollector;
10 class hkpCdPointCollector;
11 struct hkpCollisionInput;
12 struct hkpLinearCastInput;
13
15 {
16 public:
17 inline static constexpr auto RTTI = RTTI_hkpShapePhantom;
18 inline static constexpr auto VTABLE = VTABLE_hkpShapePhantom;
19
20 ~hkpShapePhantom() override; // 00
21
22 // override (hkpPhantom)
23 hkWorldOperation::Result SetShape(const hkpShape* a_shape) override; // 03
24 hkMotionState* GetMotionState() override; // 05 - { return &motionState; }
25 void CalcAabb(hkAabb& a_aabb) override; // 07
26 void DeallocateInternalArrays() override; // 0E - { hkpPhantom::DeallocateInternalArrays(); }
27
28 // add
29 virtual void SetPositionAndLinearCast(const hkVector4& a_position, const hkpLinearCastInput& a_input, hkpCdPointCollector& a_castCollector, hkpCdPointCollector* a_startCollector) = 0; // 0F
30 virtual void SetTransformAndLinearCast(const hkTransform& a_transform, const hkpLinearCastInput& a_input, hkpCdPointCollector& a_castCollector, hkpCdPointCollector* a_startCollector) = 0; // 10
31 virtual void GetClosestPoints(hkpCdPointCollector& a_collector, const hkpCollisionInput* a_input = 0) = 0; // 11
32 virtual void GetPenetrations(hkpCdBodyPairCollector& a_collector, const hkpCollisionInput* a_input = 0) = 0; // 12
33
34 // members
36 };
37 static_assert(sizeof(hkpShapePhantom) == 0x1A0);
38}
Definition hkAabb.h:8
Definition hkMotionState.h:11
Definition hkTransform.h:9
Definition hkVector4.h:9
Definition hkpCdPointCollector.h:8
Definition hkpPhantom.h:15
Definition hkpShape.h:32
Definition hkpShapePhantom.h:15
virtual void SetPositionAndLinearCast(const hkVector4 &a_position, const hkpLinearCastInput &a_input, hkpCdPointCollector &a_castCollector, hkpCdPointCollector *a_startCollector)=0
virtual void GetPenetrations(hkpCdBodyPairCollector &a_collector, const hkpCollisionInput *a_input=0)=0
hkMotionState motionState
Definition hkpShapePhantom.h:35
hkWorldOperation::Result SetShape(const hkpShape *a_shape) override
void CalcAabb(hkAabb &a_aabb) override
virtual void GetClosestPoints(hkpCdPointCollector &a_collector, const hkpCollisionInput *a_input=0)=0
hkMotionState * GetMotionState() override
~hkpShapePhantom() override
void DeallocateInternalArrays() override
static constexpr auto RTTI
Definition hkpShapePhantom.h:17
static constexpr auto VTABLE
Definition hkpShapePhantom.h:18
virtual void SetTransformAndLinearCast(const hkTransform &a_transform, const hkpLinearCastInput &a_input, hkpCdPointCollector &a_castCollector, hkpCdPointCollector *a_startCollector)=0
Result
Definition hkpWorldObject.h:21
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_hkpShapePhantom(689891, 397746, 0x1f59bd0)
constexpr std::array< REL::VariantID, 1 > VTABLE_hkpShapePhantom
Definition Offsets_VTABLE.h:5042
Definition hkpCollisionInput.h:13
Definition hkpLinearCastInput.h:8