CommonLibSSE NG
BSSceneGraph.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 NiCamera;
8 
9  class BSSceneGraph : public NiNode
10  {
11  public:
12  inline static constexpr auto RTTI = RTTI_BSSceneGraph;
13  inline static constexpr auto Ni_RTTI = NiRTTI_BSSceneGraph;
14 
15  ~BSSceneGraph() override; // 00
16 
17  // override (NiNode)
18  const NiRTTI* GetRTTI() const override; // 02
19 
20  // add
21  virtual float GetFarDistance(); // 3E
22  virtual float GetNearDistance(); // 3F - { return fNearDistance:Display; }
23  virtual void SetViewDistanceBasedOnFrameRate(float a_frameRate); // 40
24 
26  {
27 #define RUNTIME_DATA_CONTENT \
28  NiPointer<NiCamera> camera; /* 128 */ \
29  std::uint64_t unk130; /* 130 - 0x18 */ \
30  bool unk138; /* 138 */ \
31  std::uint8_t pad139; /* 139 */ \
32  std::uint16_t pad13A; /* 13A */ \
33  float cameraFOV; /* 13C */
34 
36  };
37 
38  [[nodiscard]] inline BS_SCENE_GRAPH_RUNTIME_DATA& GetRuntimeData() noexcept
39  {
40  return REL::RelocateMember<BS_SCENE_GRAPH_RUNTIME_DATA>(this, 0x128, 0x150);
41  }
42 
43  [[nodiscard]] inline const BS_SCENE_GRAPH_RUNTIME_DATA& GetRuntimeData() const noexcept
44  {
45  return REL::RelocateMember<BS_SCENE_GRAPH_RUNTIME_DATA>(this, 0x128, 0x150);
46  }
47 
48 #ifndef SKYRIM_CROSS_VR
50 #endif
51  };
52 }
53 #undef RUNTIME_DATA_CONTENT
#define RUNTIME_DATA_CONTENT
Definition: BSSceneGraph.h:27
Definition: BSSceneGraph.h:10
virtual void SetViewDistanceBasedOnFrameRate(float a_frameRate)
static constexpr auto Ni_RTTI
Definition: BSSceneGraph.h:13
const NiRTTI * GetRTTI() const override
BS_SCENE_GRAPH_RUNTIME_DATA & GetRuntimeData() noexcept
Definition: BSSceneGraph.h:38
static constexpr auto RTTI
Definition: BSSceneGraph.h:12
virtual float GetFarDistance()
const BS_SCENE_GRAPH_RUNTIME_DATA & GetRuntimeData() const noexcept
Definition: BSSceneGraph.h:43
virtual float GetNearDistance()
~BSSceneGraph() override
Definition: NiNode.h:12
Definition: NiRTTI.h:6
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BSSceneGraph(686701, 394547, 0x1f03f30)
constexpr REL::VariantID NiRTTI_BSSceneGraph(524681, 411296, 0x317cbf0)