CommonLibSSE (powerof3)
BSLightingShaderMaterialEnvmap.h
Go to the documentation of this file.
1 #pragma once
2 
4 #include "RE/N/NiSmartPointer.h"
5 
6 namespace RE
7 {
8  class NiSourceTexture;
9 
11  {
12  public:
13  inline static constexpr auto RTTI = RTTI_BSLightingShaderMaterialEnvmap;
14  inline static constexpr auto VTABLE = VTABLE_BSLightingShaderMaterialEnvmap;
15  inline static constexpr auto FEATURE = Feature::kEnvironmentMap;
16 
18 
19  // override (BSLightingShaderMaterialBase)
20  BSShaderMaterial* Create() override; // 01
21  void CopyMembers(BSShaderMaterial* a_other) override; // 02
22  std::uint32_t ComputeCRC32(void) override; // 04
23  Feature GetFeature() const override; // 06 - { return Feature::kEnvironmentMap; }
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
34  float envMapScale; // B0
35  std::uint32_t padB4; // B4
36 
37  protected:
39  {
40  using func_t = decltype(&BSLightingShaderMaterialEnvmap::Ctor);
41  static REL::Relocation<func_t> func{ RELOCATION_ID(100021, 106728) };
42  return func(this);
43  }
45  };
46  static_assert(sizeof(BSLightingShaderMaterialEnvmap) == 0xB8);
47 }
#define RELOCATION_ID(SE, AE)
Definition: PCH.h:505
Definition: Relocation.h:210
Definition: BSLightingShaderMaterialBase.h:14
Definition: BSLightingShaderMaterialEnvmap.h:11
void ReceiveValuesFromRootMaterial(bool a_skinned, bool a_rimLighting, bool a_softLighting, bool a_backLighting, bool a_MSN) override
Feature GetFeature() const override
void CopyMembers(BSShaderMaterial *a_other) override
std::uint32_t ComputeCRC32(void) override
float envMapScale
Definition: BSLightingShaderMaterialEnvmap.h:34
NiPointer< NiSourceTexture > envTexture
Definition: BSLightingShaderMaterialEnvmap.h:32
BSLightingShaderMaterialEnvmap * Ctor()
Definition: BSLightingShaderMaterialEnvmap.h:38
void SaveBinary(NiStream &a_stream) override
BSShaderMaterial * Create() override
std::uint32_t padB4
Definition: BSLightingShaderMaterialEnvmap.h:35
static constexpr auto FEATURE
Definition: BSLightingShaderMaterialEnvmap.h:15
static constexpr auto RTTI
Definition: BSLightingShaderMaterialEnvmap.h:13
void OnLoadTextureSet(std::uint64_t a_arg1, BSTextureSet *a_textureSet) override
NiPointer< NiSourceTexture > envMaskTexture
Definition: BSLightingShaderMaterialEnvmap.h:33
static constexpr auto VTABLE
Definition: BSLightingShaderMaterialEnvmap.h:14
void LoadBinary(NiStream &a_stream) override
Definition: BSShaderMaterial.h:9
Feature
Definition: BSShaderMaterial.h:15
Definition: BSTextureSet.h:9
Definition: NiSmartPointer.h:9
Definition: NiStream.h:29
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSLightingShaderMaterialEnvmap(static_cast< std::uint64_t >(692012))
constexpr std::array< REL::ID, 1 > VTABLE_BSLightingShaderMaterialEnvmap
Definition: Offsets_VTABLE.h:9203