CommonLibVR
hkpCachingShapePhantom.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/H/hkpShapePhantom.h"
4 
5 namespace RE
6 {
7  class hkpCollisionAgent;
8 
10  {
11  public:
12  inline static constexpr auto RTTI = RTTI_hkpCachingShapePhantom;
13  inline static constexpr auto VTABLE = VTABLE_hkpCachingShapePhantom;
14 
15  class OrderByUid
16  {
17  public:
18  };
19  static_assert(sizeof(OrderByUid) == 0x1);
20 
22  {
23  hkpCollisionAgent* agent; // 00
25  };
26  static_assert(sizeof(CollisionDetail) == 0x10);
27 
29 
30  ~hkpCachingShapePhantom() override; // 00
31 
32  // override (hkpShapePhantom)
33  void CalcContentStatistics(hkStatisticsCollector* a_collector, const hkClass* a_class) const override; // 02
34  hkpPhantomType GetType() const override; // 06 - { return hkpPhantomType::kCachingShape; }
35  void AddOverlappingCollidable(hkpCollidable* a_collidable) override; // 08
36  bool IsOverlappingCollidableAdded(const hkpCollidable* a_collidable) override; // 09
37  void RemoveOverlappingCollidable(hkpCollidable* a_collidable) override; // 0A
38  void EnsureDeterministicOrder() override; // 0B
39  hkpPhantom* Clone() const override; // 0C
40  void UpdateShapeCollectionFilter() override; // 0D
41  void DeallocateInternalArrays() override; // 0E
42  void SetPositionAndLinearCast(const hkVector4& a_position, const hkpLinearCastInput& a_input, hkpCdPointCollector& a_castCollector, hkpCdPointCollector* a_startCollector) override; // 0F
43  void SetTransformAndLinearCast(const hkTransform& a_transform, const hkpLinearCastInput& a_input, hkpCdPointCollector& a_castCollector, hkpCdPointCollector* a_startCollector) override; // 10
44  void GetClosestPoints(hkpCdPointCollector& a_collector, const hkpCollisionInput* a_input = 0) override; // 11
45  void GetPenetrations(hkpCdBodyPairCollector& a_collector, const hkpCollisionInput* a_input = 0) override; // 12
46 
47  // members
49  bool orderDirty; // 1B0
51  std::uint16_t pad1B2; // 1B2
52  std::uint32_t pad1B4; // 1B4
53  std::uint64_t pad1B8; // 1B8
54  private:
55  KEEP_FOR_RE()
56  };
57  static_assert(sizeof(hkpCachingShapePhantom) == 0x1C0);
58 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: hkArray.h:190
Definition: hkTransform.h:9
Definition: hkVector4.h:9
Definition: hkpCachingShapePhantom.h:16
Definition: hkpCachingShapePhantom.h:10
void RemoveOverlappingCollidable(hkpCollidable *a_collidable) override
static constexpr auto RTTI
Definition: hkpCachingShapePhantom.h:12
std::uint64_t pad1B8
Definition: hkpCachingShapePhantom.h:53
bool orderDirty
Definition: hkpCachingShapePhantom.h:49
hkpPhantomType GetType() const override
~hkpCachingShapePhantom() override
static constexpr auto VTABLE
Definition: hkpCachingShapePhantom.h:13
void SetTransformAndLinearCast(const hkTransform &a_transform, const hkpLinearCastInput &a_input, hkpCdPointCollector &a_castCollector, hkpCdPointCollector *a_startCollector) override
void GetPenetrations(hkpCdBodyPairCollector &a_collector, const hkpCollisionInput *a_input=0) override
std::uint32_t pad1B4
Definition: hkpCachingShapePhantom.h:52
void SetPositionAndLinearCast(const hkVector4 &a_position, const hkpLinearCastInput &a_input, hkpCdPointCollector &a_castCollector, hkpCdPointCollector *a_startCollector) override
void DeallocateInternalArrays() override
hkArray< CollisionDetail > collisionDetails
Definition: hkpCachingShapePhantom.h:48
bool IsOverlappingCollidableAdded(const hkpCollidable *a_collidable) override
std::uint16_t pad1B2
Definition: hkpCachingShapePhantom.h:51
OrderByUid orderRelation
Definition: hkpCachingShapePhantom.h:50
void GetClosestPoints(hkpCdPointCollector &a_collector, const hkpCollisionInput *a_input=0) override
void EnsureDeterministicOrder() override
void CalcContentStatistics(hkStatisticsCollector *a_collector, const hkClass *a_class) const override
hkpPhantom * Clone() const override
void UpdateShapeCollectionFilter() override
void AddOverlappingCollidable(hkpCollidable *a_collidable) override
Definition: hkpCdPointCollector.h:8
Definition: hkpCollidable.h:13
Definition: hkpPhantom.h:15
Definition: hkpShapePhantom.h:15
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_hkpCachingShapePhantom
Definition: Offsets_VTABLE.h:14162
constexpr REL::ID RTTI_hkpCachingShapePhantom(static_cast< std::uint64_t >(689892))
hkpPhantomType
Definition: hkpPhantomType.h:6
Definition: hkpCachingShapePhantom.h:22
hkpCollidable * collidable
Definition: hkpCachingShapePhantom.h:24
hkpCollisionAgent * agent
Definition: hkpCachingShapePhantom.h:23
Definition: hkpCollisionInput.h:13
Definition: hkpLinearCastInput.h:8