CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
hkpShapeCollection.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/H/hkpShape.h"
6
7namespace RE
8{
10 public hkpShape, // 00
11 public hkpShapeContainer // 20
12 {
13 public:
14 inline static constexpr auto RTTI = RTTI_hkpShapeCollection;
15
16 enum class CollectionType
17 {
18 kList,
21 kUser,
25
26 kTotal
27 };
28
29 ~hkpShapeCollection() override; // 00
30
31 // override (hkpShape)
32 void CalcContentStatistics(hkStatisticsCollector* a_collector, const hkClass* a_class) const override; // 02
33 float GetMaximumProjection(const hkVector4& a_direction) const override; // 03
34 const hkpShapeContainer* GetContainer() const override; // 04
35 void GetAabbImpl(const hkTransform& a_localToWorld, float a_tolerance, hkAabb& a_out) const override; // 07
36 bool CastRayImpl(const hkpShapeRayCastInput& a_input, hkpShapeRayCastOutput& a_output) const override; // 08
37 void CastRayWithCollectorImpl(const hkpShapeRayCastInput& a_input, const hkpCdBody& a_cdBody, hkpRayHitCollector& a_collector) const override; // 09
38
39 // override (hkpShapeContainer)
40 bool IsWeldingEnabled() const override; // 06 - { return !disableWelding; }
41
42 // add
43 virtual void InitWeldingInfo(hkpWeldingUtility::WeldingType a_weldingType); // 0B - { return; }
44 virtual void SetWeldingInfo(hkpShapeKey a_key, std::int16_t a_weldingInfo); // 0C - { return; }
45
46 // members
47 bool disableWelding; // 28
49 std::uint16_t pad2A; // 2A
50 std::uint32_t pad2C; // 2C
51 };
52 static_assert(sizeof(hkpShapeCollection) == 0x30);
53}
Definition: hkAabb.h:8
Definition: hkTransform.h:9
Definition: hkVector4.h:8
Definition: hkpCdBody.h:8
Definition: hkpShapeCollection.h:12
virtual void SetWeldingInfo(hkpShapeKey a_key, std::int16_t a_weldingInfo)
bool disableWelding
Definition: hkpShapeCollection.h:47
static constexpr auto RTTI
Definition: hkpShapeCollection.h:14
void CastRayWithCollectorImpl(const hkpShapeRayCastInput &a_input, const hkpCdBody &a_cdBody, hkpRayHitCollector &a_collector) const override
float GetMaximumProjection(const hkVector4 &a_direction) const override
std::uint32_t pad2C
Definition: hkpShapeCollection.h:50
CollectionType
Definition: hkpShapeCollection.h:17
const hkpShapeContainer * GetContainer() const override
std::uint16_t pad2A
Definition: hkpShapeCollection.h:49
virtual void InitWeldingInfo(hkpWeldingUtility::WeldingType a_weldingType)
~hkpShapeCollection() override
void CalcContentStatistics(hkStatisticsCollector *a_collector, const hkClass *a_class) const override
stl::enumeration< CollectionType, std::uint8_t > collectionType
Definition: hkpShapeCollection.h:48
bool IsWeldingEnabled() const override
bool CastRayImpl(const hkpShapeRayCastInput &a_input, hkpShapeRayCastOutput &a_output) const override
void GetAabbImpl(const hkTransform &a_localToWorld, float a_tolerance, hkAabb &a_out) const override
Definition: hkpShapeContainer.h:6
Definition: hkpShape.h:31
WeldingType
Definition: hkpWeldingUtility.h:14
Definition: PCH.h:216
Definition: AbsorbEffect.h:6
std::uint32_t hkpShapeKey
Definition: hkpShape.h:27
constexpr REL::ID RTTI_hkpShapeCollection
Definition: Offsets_RTTI.h:7720
Definition: hkpShapeRayCastOutput.h:9