CommonLibVR
BSFadeNode.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/N/NiNode.h"
4 
5 namespace RE
6 {
7  class BSLeafAnimNode;
8  class BSTreeNode;
9 
10  class BSFadeNode : public NiNode
11  {
12  public:
13  inline static constexpr auto RTTI = RTTI_BSFadeNode;
14  inline static constexpr auto Ni_RTTI = NiRTTI_BSFadeNode;
15  inline static constexpr auto VTABLE = VTABLE_BSFadeNode;
16 
17  ~BSFadeNode() override; // 00
18 
19  // override (NiNode)
20  const NiRTTI* GetRTTI() const override; // 02
21  BSFadeNode* AsFadeNode() override; // 05 - { return this; }
22  NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
23  void LoadBinary(NiStream& a_stream) override; // 18
24  void LinkObject(NiStream& a_stream) override; // 19
25  bool RegisterStreamables(NiStream& a_stream) override; // 1A
26  void SaveBinary(NiStream& a_stream) override; // 1B
27  bool IsEqual(NiObject* a_object) override; // 1C
28  void UpdateSelectedDownwardPass(NiUpdateData& a_data, std::uint32_t a_arg2) override; // 2D
29  void OnVisible(NiCullingProcess& a_process) override; // 34
30 
31  // add
32  virtual BSTreeNode* AsTreeNode(); // 3E - { return 0; }
33  virtual BSLeafAnimNode* AsLeafAnimNode(); // 3F - { return 0; }
34 
35  // members
36 #ifndef SKYRIMVR
37  float unk128; // 128
38  float unk12C; // 12C
39  float currentFade; // 130
40  std::uint32_t unk134; // 134
41  std::uint32_t unk138; // 138
42  std::uint32_t unk13C; // 13C
43  float unk140; // 140
44  std::uint32_t unk144; // 144
45  std::uint32_t unk148; // 148
46  float unk14C; // 14C
47  std::uint16_t unk150; // 150
48  std::uint8_t unk152; // 152
49  std::uint8_t unk153; // 153
50  std::uint8_t unk154; // 154
51  std::uint8_t unk155; // 155
52  std::uint16_t unk156; // 156
53 #else
54  float unk150; // 150
55  float unk154; // 154
56  float currentFade; // 158
57  std::uint32_t unk15C; // 15C
58  std::uint32_t unk160; // 160
59  std::uint32_t unk164; // 164
60  float unk168; // 168
61  std::uint32_t unk16C; // 16C
62  std::uint32_t unk170; // 170
63  float unk174; // 174
64  std::uint16_t unk176; // 176
65  std::uint8_t unk177; // 177
66  std::uint8_t unk178; // 178
67  std::uint8_t unk179; // 179
68  std::int8_t unk17A; // 17A
69  std::uint16_t unk17C; // 17C
70 #endif
71  private:
72  KEEP_FOR_RE()
73  };
74 #ifndef SKYRIMVR
75  static_assert(sizeof(BSFadeNode) == 0x158);
76 #else
77  static_assert(sizeof(BSFadeNode) == 0x180);
78 #endif
79 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: BSFadeNode.h:11
~BSFadeNode() override
BSFadeNode * AsFadeNode() override
bool IsEqual(NiObject *a_object) override
std::uint32_t unk144
Definition: BSFadeNode.h:44
bool RegisterStreamables(NiStream &a_stream) override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
const NiRTTI * GetRTTI() const override
void SaveBinary(NiStream &a_stream) override
std::uint8_t unk155
Definition: BSFadeNode.h:51
std::uint16_t unk156
Definition: BSFadeNode.h:52
std::uint16_t unk150
Definition: BSFadeNode.h:47
std::uint32_t unk13C
Definition: BSFadeNode.h:42
void OnVisible(NiCullingProcess &a_process) override
std::uint32_t unk138
Definition: BSFadeNode.h:41
std::uint32_t unk134
Definition: BSFadeNode.h:40
void LinkObject(NiStream &a_stream) override
std::uint8_t unk152
Definition: BSFadeNode.h:48
float unk14C
Definition: BSFadeNode.h:46
static constexpr auto RTTI
Definition: BSFadeNode.h:13
static constexpr auto VTABLE
Definition: BSFadeNode.h:15
void UpdateSelectedDownwardPass(NiUpdateData &a_data, std::uint32_t a_arg2) override
float currentFade
Definition: BSFadeNode.h:39
std::uint8_t unk154
Definition: BSFadeNode.h:50
float unk12C
Definition: BSFadeNode.h:38
std::uint8_t unk153
Definition: BSFadeNode.h:49
std::uint32_t unk148
Definition: BSFadeNode.h:45
void LoadBinary(NiStream &a_stream) override
static constexpr auto Ni_RTTI
Definition: BSFadeNode.h:14
virtual BSTreeNode * AsTreeNode()
float unk128
Definition: BSFadeNode.h:37
float unk140
Definition: BSFadeNode.h:43
virtual BSLeafAnimNode * AsLeafAnimNode()
Definition: NiCloningProcess.h:10
Definition: NiCullingProcess.h:34
Definition: NiNode.h:12
Definition: NiObject.h:37
Definition: NiRTTI.h:6
Definition: NiStream.h:29
Definition: NiAVObject.h:28
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BSFadeNode
Definition: Offsets_VTABLE.h:9024
constexpr REL::ID NiRTTI_BSFadeNode(static_cast< std::uint64_t >(527630))
constexpr REL::ID RTTI_BSFadeNode(static_cast< std::uint64_t >(691872))