CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
BSMultiBoundNode.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/B/BSNiNode.h"
6
7namespace RE
8{
9 class BSMultiBound;
10 class BSMultiBoundRoom;
11 class NiPoint3;
12
14 {
15 public:
16 inline static constexpr auto RTTI = RTTI_BSMultiBoundNode;
17 inline static constexpr auto Ni_RTTI = NiRTTI_BSMultiBoundNode;
18
19 ~BSMultiBoundNode() override; // 00
20
21 // override (BSNiNode)
22 const NiRTTI* GetRTTI() const override; // 02
23 BSMultiBoundNode* AsMultiBoundNode() override; // 06 - { return this; }
24 NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
25 void LoadBinary(NiStream& a_stream) override; // 18
26 void LinkObject(NiStream& a_stream) override; // 19
27 bool RegisterStreamables(NiStream& a_stream) override; // 1A
28 void SaveBinary(NiStream& a_stream) override; // 1B
29 bool IsEqual(NiObject* a_object) override; // 1C
30 void UpdateDownwardPass(NiUpdateData& a_data, std::uint32_t a_arg2) override; // 2C
31 void UpdateWorldBound() override; // 2F
32 void OnVisible(NiCullingProcess& a_process) override; // 34
33 void UpdateUpwardPass(NiUpdateData& a_data) override; // 3D
34
35 // add
36 virtual BSMultiBoundRoom* GetMultiBoundRoom(); // 3E - { return 0; }
37 virtual bool QPointWithin(const NiPoint3& a_point); // 3F
38 virtual void Unk_40(void); // 40
39 virtual void Unk_41(void); // 41
40
41 // members
44 float lastAccumTime; // 134
45 };
46#ifndef SKYRIMVR
47 static_assert(sizeof(BSMultiBoundNode) == 0x138);
48#else
49 static_assert(sizeof(BSMultiBoundNode) == 0x160);
50#endif
51}
BSCPCullingType
Definition: BSCullingProcess.h:23
Definition: BSMultiBoundNode.h:14
bool IsEqual(NiObject *a_object) override
NiPointer< BSMultiBound > multiBound
Definition: BSMultiBoundNode.h:42
virtual BSMultiBoundRoom * GetMultiBoundRoom()
virtual void Unk_40(void)
void UpdateWorldBound() override
~BSMultiBoundNode() override
void LinkObject(NiStream &a_stream) override
static constexpr auto Ni_RTTI
Definition: BSMultiBoundNode.h:17
virtual void Unk_41(void)
const NiRTTI * GetRTTI() const override
virtual bool QPointWithin(const NiPoint3 &a_point)
void LoadBinary(NiStream &a_stream) override
BSMultiBoundNode * AsMultiBoundNode() override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
void UpdateDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2) override
float lastAccumTime
Definition: BSMultiBoundNode.h:44
void UpdateUpwardPass(NiUpdateData &a_data) override
void OnVisible(NiCullingProcess &a_process) override
bool RegisterStreamables(NiStream &a_stream) override
void SaveBinary(NiStream &a_stream) override
static constexpr auto RTTI
Definition: BSMultiBoundNode.h:16
BSCullingProcess::BSCPCullingType cullingMode
Definition: BSMultiBoundNode.h:43
Definition: BSNiNode.h:8
Definition: NiCullingProcess.h:34
Definition: NiObject.h:37
Definition: NiPoint3.h:6
Definition: NiSmartPointer.h:9
Definition: NiRTTI.h:6
Definition: NiStream.h:6
Definition: NiAVObject.h:22
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSMultiBoundNode
Definition: Offsets_RTTI.h:1942
constexpr REL::ID NiRTTI_BSMultiBoundNode
Definition: Offsets_NiRTTI.h:70