CommonLibSSE NG
Loading...
Searching...
No Matches
BSLightingShaderMaterialMultiLayerParallax.h
Go to the documentation of this file.
1#pragma once
2
5
6namespace RE
7{
8 class NiSourceTexture;
9
11 {
12 public:
15 inline static auto FEATURE = Feature::kMultilayerParallax;
16
18
19 // override (BSLightingShaderMaterialBase)
20 BSShaderMaterial* Create() override; // 01
21 void CopyMembers(BSShaderMaterial* a_src) override; // 02
22 std::uint32_t ComputeCRC32(void) override; // 04
23 Feature GetFeature() const override; // 06 - { return Feature::kMultilayerParallax; }
24 void OnLoadTextureSet(std::uint64_t a_arg1, BSTextureSet* a_textureSet) override; // 08
25 void ClearTextures() override; // 09
26 void ReceiveValuesFromRootMaterial(bool a_skinned, bool a_rimLighting, bool a_softLighting, bool a_backLighting, bool a_MSN) override; // 0A
27 void GetTextures(void) override; // 0B
28 void SaveBinary(NiStream& a_stream) override; // 0C
29 void LoadBinary(NiStream& a_stream) override; // 0D
30
31 // members
39 float envmapScale; // C8
40 std::uint32_t padCC; // CC
41
42 protected:
44 {
46 REL::Relocation<func_t> func{ RELOCATION_ID(100125, 106832) };
47 return func(this);
48 }
50 };
51 static_assert(sizeof(BSLightingShaderMaterialMultiLayerParallax) == 0xD0);
52}
#define RELOCATION_ID(a_se, a_ae)
Definition PCH.h:794
Definition BSLightingShaderMaterialBase.h:14
Definition BSLightingShaderMaterialMultiLayerParallax.h:11
float parallaxInnerLayerVScale
Definition BSLightingShaderMaterialMultiLayerParallax.h:38
std::uint32_t ComputeCRC32(void) override
float parallaxRefractionScale
Definition BSLightingShaderMaterialMultiLayerParallax.h:36
static constexpr auto RTTI
Definition BSLightingShaderMaterialMultiLayerParallax.h:13
void LoadBinary(NiStream &a_stream) override
BSLightingShaderMaterialMultiLayerParallax * Ctor()
Definition BSLightingShaderMaterialMultiLayerParallax.h:43
void SaveBinary(NiStream &a_stream) override
NiPointer< NiSourceTexture > envMaskTexture
Definition BSLightingShaderMaterialMultiLayerParallax.h:34
NiPointer< NiSourceTexture > layerTexture
Definition BSLightingShaderMaterialMultiLayerParallax.h:32
void OnLoadTextureSet(std::uint64_t a_arg1, BSTextureSet *a_textureSet) override
float parallaxLayerThickness
Definition BSLightingShaderMaterialMultiLayerParallax.h:35
static constexpr auto VTABLE
Definition BSLightingShaderMaterialMultiLayerParallax.h:14
float envmapScale
Definition BSLightingShaderMaterialMultiLayerParallax.h:39
NiPointer< NiSourceTexture > envTexture
Definition BSLightingShaderMaterialMultiLayerParallax.h:33
BSShaderMaterial * Create() override
static auto FEATURE
Definition BSLightingShaderMaterialMultiLayerParallax.h:15
void ReceiveValuesFromRootMaterial(bool a_skinned, bool a_rimLighting, bool a_softLighting, bool a_backLighting, bool a_MSN) override
float parallaxInnerLayerUScale
Definition BSLightingShaderMaterialMultiLayerParallax.h:37
void CopyMembers(BSShaderMaterial *a_src) override
std::uint32_t padCC
Definition BSLightingShaderMaterialMultiLayerParallax.h:40
Definition BSShaderMaterial.h:9
Feature
Definition BSShaderMaterial.h:14
Definition BSTextureSet.h:9
Definition NiSmartPointer.h:9
Definition NiStream.h:27
Definition Relocation.h:1638
Definition AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BSLightingShaderMaterialMultiLayerParallax(692023, 400067, 0x1f7fe30)
constexpr std::array< REL::VariantID, 1 > VTABLE_BSLightingShaderMaterialMultiLayerParallax
Definition Offsets_VTABLE.h:7230