CommonLibVR
Loading...
Searching...
No Matches
BSTreeManager.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSAtomic.h"
4#include "RE/B/BSTArray.h"
5#include "RE/B/BSTSingleton.h"
6#include "RE/N/NiPoint2.h"
8
9namespace RE
10{
11 class BSLeafAnimNode;
12 class BSTreeNode;
13 class NiCamera;
14
15 class BSTreeManager : public BSTSingletonSDM<BSTreeManager>
16 {
17 public:
19 {
20 public:
21 inline static constexpr auto RTTI = RTTI_BSTreeManager__IQueryCullingCamera;
22 inline static constexpr auto VTABLE = VTABLE_BSTreeManager__IQueryCullingCamera;
23
24 virtual ~IQueryCullingCamera(); // 00
25
26 // add
27 virtual NiCamera* GetCamera() = 0; // 01
28 };
29 static_assert(sizeof(IQueryCullingCamera) == 0x8);
30
32 {
33 static REL::Relocation<BSTreeManager**> singleton{ RELOCATION_ID(514181, 400330) };
34 return *singleton;
35 }
36
37 // members
38 bool enableTrees; // 01
39 bool enableTreeAnims; // 02
40 bool forceFullDetail; // 03
41 std::uint32_t pad04; // 04
43 mutable BSSpinLock treeLock; // 10
44 mutable BSSpinLock branchLock; // 18
48 std::uint32_t unk68; // 68
49 std::uint32_t unk6C; // 6C
51 float windMagnitude; // 78
52 float treeUpdateTimer; // 7C
53 float midLODSwitchDist; // 80
54 std::uint32_t pad84; // 84
55 private:
57 };
58 static_assert(sizeof(BSTreeManager) == 0x88);
59}
#define KEEP_FOR_RE()
Definition PCH.h:517
#define RELOCATION_ID(SE, AE)
Definition PCH.h:506
Definition Relocation.h:210
Definition BSAtomic.h:92
Definition BSTArray.h:378
Definition BSTreeManager.h:19
static constexpr auto VTABLE
Definition BSTreeManager.h:22
static constexpr auto RTTI
Definition BSTreeManager.h:21
Definition BSTreeManager.h:16
BSTArray< NiPointer< BSTreeNode > > loadedTrees
Definition BSTreeManager.h:45
BSSpinLock treeLock
Definition BSTreeManager.h:43
BSSpinLock branchLock
Definition BSTreeManager.h:44
std::uint32_t pad84
Definition BSTreeManager.h:54
std::uint32_t unk6C
Definition BSTreeManager.h:49
float treeUpdateTimer
Definition BSTreeManager.h:52
bool enableTreeAnims
Definition BSTreeManager.h:39
float midLODSwitchDist
Definition BSTreeManager.h:53
float windMagnitude
Definition BSTreeManager.h:51
bool forceFullDetail
Definition BSTreeManager.h:40
BSTArray< NiPointer< BSLeafAnimNode > > branches
Definition BSTreeManager.h:47
IQueryCullingCamera * cullingCamera
Definition BSTreeManager.h:42
static BSTreeManager * GetSingleton()
Definition BSTreeManager.h:31
bool enableTrees
Definition BSTreeManager.h:38
NiPoint2 windDirection
Definition BSTreeManager.h:50
std::uint32_t pad04
Definition BSTreeManager.h:41
BSTArray< BSTreeNode * > skinnedTrees
Definition BSTreeManager.h:46
std::uint32_t unk68
Definition BSTreeManager.h:48
Definition NiCamera.h:11
Definition NiPoint2.h:6
Definition AbsorbEffect.h:6
constexpr REL::ID RTTI_BSTreeManager__IQueryCullingCamera(static_cast< std::uint64_t >(686663))
constexpr std::array< REL::ID, 1 > VTABLE_BSTreeManager__IQueryCullingCamera
Definition Offsets_VTABLE.h:10555
Definition BSTSingleton.h:50