CommonLibSSE NG
Loading...
Searching...
No Matches
BSWaterShaderMaterial.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/N/NiColor.h"
6#include "RE/T/TESWaterForm.h"
7
8namespace RE
9{
10 class NiSourceTexture;
11
13 {
14 public:
15 inline static constexpr auto RTTI = RTTI_BSWaterShaderMaterial;
16
17 ~BSWaterShaderMaterial() override; // 00::
18
19 // override (BSShaderMaterial)
20 BSShaderMaterial* Create() override; // 01
21 void CopyMembers(BSShaderMaterial* a_other) override; // 02
22 bool DoIsCopy(BSShaderMaterial* a_other) override; // 03
23 std::uint32_t ComputeCRC32(void) override; // 04
24 BSShaderMaterial* GetDefault() override; // 05
25 Type GetType() const override; // 07 - { return Type::kWater; }
26
27 // members
34 float sunSparklePower; // 06C
37 float sunSpecularPower; // 090
38 float reflectionAmount; // 094
39 float alpha; // 098
40 float refractionMagnitude; // 09C
41 std::uint64_t unk0A0; // 0A0
42 float unk0A8; // 0A8
43 std::uint64_t unk0B0; // 0B0
44 std::uint64_t unk0B8; // 0B8
45 std::uint64_t unk0C0; // 0C0
46 float specularPower; // 0C8
47 std::uint64_t unk0D0; // 0D0
48 std::uint64_t unk0D8; // 0D8
49 float noiseFalloff; // 0E0
50 float reflectionMagnitude; // 0E4
51 float sunSparkleMagnitude; // 0E8
52 float unk0EC; // 0EC
54 std::uint64_t unk100; // 100
55 std::uint64_t unk108; // 108
56 std::uint64_t unk110; // 100
57 std::uint64_t unk118; // 118
58 float uvScaleA[3]; // 120
59 std::uint32_t unk12C; // 12C
60 float amplitudeA[3]; // 130
62 NiPlane plane; // 140
63 std::uint32_t unk150; // 150
64 float flowmapScale; // 154
66 float unk15C; // 15C
67 float unk160; // 160
69 float unk168; // 168
70 float underwaterFogAmount; // 16C
71 float fresnelAmount; // 170
72 std::uint32_t unk174; // 174
73 std::uint32_t unk178; // 178
74 std::uint8_t unk17C; // 17C
75 std::uint8_t unk17D; // 17D
76 std::uint8_t unk17E; // 17E
77 std::uint8_t unk17F; // 17F
78 };
79 static_assert(sizeof(BSWaterShaderMaterial) == 0x180);
80}
Definition BSShaderMaterial.h:9
Type
Definition BSShaderMaterial.h:38
Definition BSWaterShaderMaterial.h:13
BSShaderMaterial * Create() override
NiPointer< NiSourceTexture > normalTexture1
Definition BSWaterShaderMaterial.h:29
float unk0A8
Definition BSWaterShaderMaterial.h:42
float sunSpecularPower
Definition BSWaterShaderMaterial.h:37
NiPointer< NiSourceTexture > normalTexture3
Definition BSWaterShaderMaterial.h:31
NiPointer< NiSourceTexture > normalTexture4
Definition BSWaterShaderMaterial.h:32
std::uint64_t unk0B8
Definition BSWaterShaderMaterial.h:44
NiPointer< NiSourceTexture > normalTexture2
Definition BSWaterShaderMaterial.h:30
float unk0EC
Definition BSWaterShaderMaterial.h:52
static constexpr auto RTTI
Definition BSWaterShaderMaterial.h:15
std::uint64_t unk118
Definition BSWaterShaderMaterial.h:57
std::uint64_t unk0D8
Definition BSWaterShaderMaterial.h:48
NiPointer< NiSourceTexture > staticReflectionTexture
Definition BSWaterShaderMaterial.h:28
float amplitudeA[3]
Definition BSWaterShaderMaterial.h:60
float underwaterFogAmount
Definition BSWaterShaderMaterial.h:70
std::uint32_t unk178
Definition BSWaterShaderMaterial.h:73
float reflectionAmount
Definition BSWaterShaderMaterial.h:38
bool DoIsCopy(BSShaderMaterial *a_other) override
float alpha
Definition BSWaterShaderMaterial.h:39
float uvScaleA[3]
Definition BSWaterShaderMaterial.h:58
float fresnelAmount
Definition BSWaterShaderMaterial.h:71
std::uint64_t unk0A0
Definition BSWaterShaderMaterial.h:41
float noiseFalloff
Definition BSWaterShaderMaterial.h:49
float underwaterFogDistFar
Definition BSWaterShaderMaterial.h:68
float sunSparklePower
Definition BSWaterShaderMaterial.h:34
float flowmapScale
Definition BSWaterShaderMaterial.h:64
std::uint64_t unk0C0
Definition BSWaterShaderMaterial.h:45
float unk168
Definition BSWaterShaderMaterial.h:69
WaterShaderData::DepthProperties depthProperties
Definition BSWaterShaderMaterial.h:53
std::uint8_t unk17F
Definition BSWaterShaderMaterial.h:77
std::uint8_t unk17C
Definition BSWaterShaderMaterial.h:74
float aboveWaterFogDistFar
Definition BSWaterShaderMaterial.h:65
std::uint32_t unk12C
Definition BSWaterShaderMaterial.h:59
std::uint8_t unk17D
Definition BSWaterShaderMaterial.h:75
float specularPower
Definition BSWaterShaderMaterial.h:46
void CopyMembers(BSShaderMaterial *a_other) override
std::uint64_t unk0D0
Definition BSWaterShaderMaterial.h:47
std::uint64_t unk110
Definition BSWaterShaderMaterial.h:56
float reflectionMagnitude
Definition BSWaterShaderMaterial.h:50
std::uint64_t unk100
Definition BSWaterShaderMaterial.h:54
std::uint64_t unk108
Definition BSWaterShaderMaterial.h:55
NiColorA reflectionColor
Definition BSWaterShaderMaterial.h:36
~BSWaterShaderMaterial() override
float sunSparkleMagnitude
Definition BSWaterShaderMaterial.h:51
Type GetType() const override
std::uint32_t unk150
Definition BSWaterShaderMaterial.h:63
std::uint64_t unk0B0
Definition BSWaterShaderMaterial.h:43
NiPlane plane
Definition BSWaterShaderMaterial.h:62
float displacementDampener
Definition BSWaterShaderMaterial.h:61
std::uint8_t unk17E
Definition BSWaterShaderMaterial.h:76
std::uint32_t ComputeCRC32(void) override
NiColor shallowWaterColor
Definition BSWaterShaderMaterial.h:33
std::uint32_t unk174
Definition BSWaterShaderMaterial.h:72
NiColorA deepWaterColor
Definition BSWaterShaderMaterial.h:35
float unk15C
Definition BSWaterShaderMaterial.h:66
BSShaderMaterial * GetDefault() override
float unk160
Definition BSWaterShaderMaterial.h:67
float refractionMagnitude
Definition BSWaterShaderMaterial.h:40
Definition NiColor.h:276
Definition NiColor.h:11
Definition NiPlane.h:8
Definition NiSmartPointer.h:9
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BSWaterShaderMaterial(692060, 400104, 0x1f80738)
Definition TESWaterForm.h:21