CommonLibSSE (powerof3)
LocalMapCamera.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTSmartPointer.h"
4 #include "RE/N/NiPoint3.h"
5 #include "RE/N/NiSmartPointer.h"
6 #include "RE/T/TESCamera.h"
7 #include "RE/T/TESCameraState.h"
8 
9 namespace RE
10 {
11  class NiCamera;
12 
13  class LocalMapCamera : public TESCamera
14  {
15  public:
16  inline static constexpr auto RTTI = RTTI_LocalMapCamera;
17 
19  {
20  public:
21  inline static constexpr auto RTTI = RTTI_LocalMapCamera__DefaultState;
22 
23  ~DefaultState() override; // 00
24 
25  // add
26  void Begin() override; // 01
27  void Update(BSTSmartPointer<TESCameraState>& a_nextState) override; // 03
28 
29  // members
32  float zoom; // 38
33  float minFrustumHalfWidth; // 3C
34  float minFrustumHalfHeight; // 40
35  std::uint32_t pad44; // 44
36  };
37  static_assert(sizeof(DefaultState) == 0x48);
38 
39  LocalMapCamera(float a_zRotation);
40  ~LocalMapCamera() override; // 00
41 
42  void SetAreaBounds(NiPoint3& a_maxExtent, NiPoint3& a_minExtent);
44  void SetDefaultStateMinFrustumDimensions(float a_width, float a_height);
45  void SetDefaultStateTranslation(float a_x, float a_y, float a_z);
46  void SetNorthRotation(float a_northRotation);
47 
48  // members
53  float zRotation; // 60
54  std::uint32_t pad64; // 64
55 
56  protected:
57  LocalMapCamera* Ctor(float a_zRotation);
58  };
59  static_assert(sizeof(LocalMapCamera) == 0x68);
60 }
Definition: BSTSmartPointer.h:37
Definition: LocalMapCamera.h:19
float zoom
Definition: LocalMapCamera.h:32
void Update(BSTSmartPointer< TESCameraState > &a_nextState) override
std::uint32_t pad44
Definition: LocalMapCamera.h:35
float minFrustumHalfWidth
Definition: LocalMapCamera.h:33
NiPoint3 translation
Definition: LocalMapCamera.h:31
static constexpr auto RTTI
Definition: LocalMapCamera.h:21
NiPoint3 initialPosition
Definition: LocalMapCamera.h:30
float minFrustumHalfHeight
Definition: LocalMapCamera.h:34
Definition: LocalMapCamera.h:14
void SetDefaultStateTranslation(float a_x, float a_y, float a_z)
LocalMapCamera * Ctor(float a_zRotation)
NiPointer< NiCamera > camera
Definition: LocalMapCamera.h:52
NiPoint3 maxExtent
Definition: LocalMapCamera.h:49
BSTSmartPointer< DefaultState > defaultState
Definition: LocalMapCamera.h:51
void SetAreaBounds(NiPoint3 &a_maxExtent, NiPoint3 &a_minExtent)
void SetDefaultStateMinFrustumDimensions(float a_width, float a_height)
LocalMapCamera(float a_zRotation)
float zRotation
Definition: LocalMapCamera.h:53
NiPoint3 minExtent
Definition: LocalMapCamera.h:50
static constexpr auto RTTI
Definition: LocalMapCamera.h:16
void SetDefaultStateInitialPosition(NiPoint3 &a_position)
std::uint32_t pad64
Definition: LocalMapCamera.h:54
~LocalMapCamera() override
void SetNorthRotation(float a_northRotation)
Definition: NiPoint3.h:6
Definition: NiSmartPointer.h:9
Definition: TESCameraState.h:16
Definition: TESCamera.h:13
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_LocalMapCamera
Definition: Offsets_RTTI.h:5117
constexpr REL::ID RTTI_LocalMapCamera__DefaultState
Definition: Offsets_RTTI.h:5118