CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
Sky.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/B/BSTArray.h"
5#include "RE/B/BSTList.h"
6#include "RE/B/BSTextureSet.h"
7#include "RE/N/NiColor.h"
10
11namespace RE
12{
13 class Atmosphere;
14 class BGSLightingTemplate;
15 class BSMultiBoundNode;
16 class Clouds;
17 class ImageSpaceModifierInstanceForm;
18 class Moon;
19 class NiNode;
20 class NiTexture;
21 class Precipitation;
22 class ReferenceEffect;
23 class SkySound;
24 class Stars;
25 class Sun;
26 class TESClimate;
27 class TESRegion;
28 class TESWeather;
29
30 class Sky
31 {
32 public:
33 inline static constexpr auto RTTI = RTTI_Sky;
34
35 enum class Mode
36 {
37 kNone = 0,
40 kFull,
41
42 kTotal
43 };
44
46 {
47 public:
48 };
49
50 virtual ~Sky(); // 00
51
52 static Sky* GetSingleton();
53
54 // members
58 std::uint64_t unk020; // 020
62 float lightingTransition; // 038
71 Stars* stars; // 078
72 Sun* sun; // 080
73 Clouds* clouds; // 088
74 Moon* masser; // 090
75 Moon* secunda; // 098
77 NiColor skyColor[17]; // 0A8
78 std::uint32_t unk174; // 174
79 std::uint64_t unk178; // 178
80 std::uint64_t unk180; // 180
81 std::uint64_t unk188; // 188
82 std::uint64_t unk190; // 190
83 std::uint64_t unk198; // 198
84 std::uint32_t unk1A0; // 1A0
85 std::uint32_t unk1A4; // 1A4
86 float unk1A8; // 1A8
87 float unk1AC; // 1AC
88 float currentGameHour; // 1B0
89 float lastWeatherUpdate; // 1B4
90 float currentWeatherPct; // 1B8
93 float flash; // 1C8
94 std::uint32_t pad1CC; // 1CC
95 std::time_t flashTime; // 1D0
96 std::uint32_t lastMoonPhaseUpdate; // 1D8
97 std::uint32_t flags; // 1DC
98 ImageSpaceModifierInstanceForm* currentWeatherImageSpaceMod; // 1E0
99 ImageSpaceModifierInstanceForm* currentWeatherImageSpaceMod2; // 1E8
100 ImageSpaceModifierInstanceForm* lastWeatherImageSpaceMod; // 1F0
101 ImageSpaceModifierInstanceForm* lastWeatherImageSpaceMod2; // 1F8
105 float auroraInStart; // 258
106 float auroraIn; // 25C
107 float auroraOutStart; // 260
108 float auroraOut; // 264
115 };
116 static_assert(sizeof(Sky) == 0x2C8);
117}
Definition: Atmosphere.h:13
Definition: BGSLightingTemplate.h:11
Definition: BSTList.h:10
Definition: BSTArray.h:377
Definition: Clouds.h:13
Definition: Moon.h:12
Definition: NiColor.h:9
Definition: NiSmartPointer.h:9
Definition: Precipitation.h:13
Definition: SkyEffectController.h:8
Definition: Sky.h:31
stl::enumeration< Mode, std::uint32_t > mode
Definition: Sky.h:91
float lightingTransition
Definition: Sky.h:62
SkyEffectController effectController
Definition: Sky.h:111
TESClimate * currentClimate
Definition: Sky.h:64
float auroraOut
Definition: Sky.h:108
float lastWeatherUpdate
Definition: Sky.h:89
TESWeather * currentWeather
Definition: Sky.h:65
NiColor skyColor[17]
Definition: Sky.h:77
ObjectRefHandle currentRoom
Definition: Sky.h:60
std::uint32_t unk1A4
Definition: Sky.h:85
NiPointer< NiNode > moonsRoot
Definition: Sky.h:56
ObjectRefHandle previousRoom
Definition: Sky.h:61
Mode
Definition: Sky.h:36
NiPointer< ReferenceEffect > lastReferenceEffect
Definition: Sky.h:110
NiColor ambientSpecularTint
Definition: Sky.h:103
BSTArray< NiPointer< NiTexture > > storedCloudTextures
Definition: Sky.h:112
std::uint32_t unk1A0
Definition: Sky.h:84
float ambientSpecularFresnel
Definition: Sky.h:104
std::uint64_t unk180
Definition: Sky.h:80
float auroraIn
Definition: Sky.h:106
std::uint64_t unk188
Definition: Sky.h:81
std::uint32_t pad1CC
Definition: Sky.h:94
std::uint64_t unk190
Definition: Sky.h:82
TESRegion * region
Definition: Sky.h:69
ImageSpaceModifierInstanceForm * lastWeatherImageSpaceMod
Definition: Sky.h:100
NiPointer< BSMultiBoundNode > root
Definition: Sky.h:55
Precipitation * precip
Definition: Sky.h:76
Atmosphere * atmosphere
Definition: Sky.h:70
float flash
Definition: Sky.h:93
std::uint32_t unk174
Definition: Sky.h:78
float auroraOutStart
Definition: Sky.h:107
float auroraInStart
Definition: Sky.h:105
std::uint64_t unk020
Definition: Sky.h:58
BSTArray< SkyStaticRefData > skyStaticRefData
Definition: Sky.h:114
std::time_t flashTime
Definition: Sky.h:95
Sun * sun
Definition: Sky.h:72
TESWeather * defaultWeather
Definition: Sky.h:67
BSTArray< NiPointer< NiTexture > > storedWorldMapCloudTextures
Definition: Sky.h:113
ImageSpaceModifierInstanceForm * currentWeatherImageSpaceMod
Definition: Sky.h:98
std::uint32_t lastMoonPhaseUpdate
Definition: Sky.h:96
float unk1AC
Definition: Sky.h:87
NiColor directionalAmbientColors[3][2]
Definition: Sky.h:102
ImageSpaceModifierInstanceForm * currentWeatherImageSpaceMod2
Definition: Sky.h:99
static Sky * GetSingleton()
std::uint64_t unk178
Definition: Sky.h:79
std::uint32_t flags
Definition: Sky.h:97
float currentGameHour
Definition: Sky.h:88
NiPointer< NiNode > auroraRoot
Definition: Sky.h:57
std::uint64_t unk198
Definition: Sky.h:83
float currentWeatherPct
Definition: Sky.h:90
float unk1A8
Definition: Sky.h:86
TESWeather * lastWeather
Definition: Sky.h:66
virtual ~Sky()
Moon * secunda
Definition: Sky.h:75
BGSLightingTemplate * extLightingOverride
Definition: Sky.h:59
Moon * masser
Definition: Sky.h:74
ImageSpaceModifierInstanceForm * lastWeatherImageSpaceMod2
Definition: Sky.h:101
NiPointer< ReferenceEffect > currentReferenceEffect
Definition: Sky.h:109
Clouds * clouds
Definition: Sky.h:73
static constexpr auto RTTI
Definition: Sky.h:33
BSSimpleList< SkySound * > * skySoundList
Definition: Sky.h:92
TESWeather * overrideWeather
Definition: Sky.h:68
Stars * stars
Definition: Sky.h:71
float lightingTransitionTimer
Definition: Sky.h:63
Definition: Stars.h:11
Definition: Sun.h:14
Definition: TESClimate.h:13
Definition: TESRegion.h:44
Definition: TESWeather.h:17
Definition: PCH.h:216
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_Sky
Definition: Offsets_RTTI.h:5816
Definition: Sky.h:46