CommonLibVR
hkMoppBvTreeShapeBase.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/H/hkArray.h"
4 #include "RE/H/hkVector4.h"
5 #include "RE/H/hkpBvTreeShape.h"
6 
7 namespace RE
8 {
9  class hkpMoppCode;
10  class hkTransform;
11 
13  {
14  public:
15  inline static constexpr auto RTTI = RTTI_hkMoppBvTreeShapeBase;
16  inline static constexpr auto VTABLE = VTABLE_hkMoppBvTreeShapeBase;
17 
18  ~hkMoppBvTreeShapeBase() override; // 00
19 
20  // override (hkpBvTreeShape)
21  void CalcContentStatistics(hkStatisticsCollector* a_collector, const hkClass* a_class) const override = 0; // 02
22  void QueryAabb(const hkAabb& a_aabb, hkArray<hkpShapeKey>& a_hits) const override; // 0B
23  std::uint32_t QueryAabbImpl(const hkAabb& a_aabb, hkpShapeKey* a_hits, std::int32_t a_maxNumKeys) const override; // 0C
24 
25  // add
26  virtual void QueryObb(const hkTransform& a_obbToMopp, const hkVector4& a_extent, float tolerance, hkArray<hkpShapeKey>& a_hits) const; // 0E
27 
28  // members
29  const hkpMoppCode* code; // 28
30  const std::uint8_t* moppData; // 30
31  std::uint32_t moppDataSize; // 38
32  std::uint32_t pad3C; // 3C
34  private:
35  KEEP_FOR_RE()
36  };
37  static_assert(sizeof(hkMoppBvTreeShapeBase) == 0x50);
38 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: hkAabb.h:8
Definition: hkArray.h:190
Definition: hkMoppBvTreeShapeBase.h:13
virtual void QueryObb(const hkTransform &a_obbToMopp, const hkVector4 &a_extent, float tolerance, hkArray< hkpShapeKey > &a_hits) const
void QueryAabb(const hkAabb &a_aabb, hkArray< hkpShapeKey > &a_hits) const override
hkVector4 codeInfoCopy
Definition: hkMoppBvTreeShapeBase.h:33
std::uint32_t pad3C
Definition: hkMoppBvTreeShapeBase.h:32
const hkpMoppCode * code
Definition: hkMoppBvTreeShapeBase.h:29
std::uint32_t QueryAabbImpl(const hkAabb &a_aabb, hkpShapeKey *a_hits, std::int32_t a_maxNumKeys) const override
std::uint32_t moppDataSize
Definition: hkMoppBvTreeShapeBase.h:31
static constexpr auto VTABLE
Definition: hkMoppBvTreeShapeBase.h:16
const std::uint8_t * moppData
Definition: hkMoppBvTreeShapeBase.h:30
static constexpr auto RTTI
Definition: hkMoppBvTreeShapeBase.h:15
~hkMoppBvTreeShapeBase() override
void CalcContentStatistics(hkStatisticsCollector *a_collector, const hkClass *a_class) const override=0
Definition: hkTransform.h:9
Definition: hkVector4.h:9
Definition: hkpBvTreeShape.h:12
Definition: hkpMoppCode.h:10
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_hkMoppBvTreeShapeBase
Definition: Offsets_VTABLE.h:13836
constexpr REL::ID RTTI_hkMoppBvTreeShapeBase(static_cast< std::uint64_t >(689827))
std::uint32_t hkpShapeKey
Definition: hkpContactPointEvent.h:12