CommonLibSSE (Parapets fork)
BSTextureSet.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/N/NiObject.h"
4 
5 namespace RE
6 {
7  class NiSourceTexture;
8 
9  class BSTextureSet : public NiObject
10  {
11  public:
12  inline static constexpr auto RTTI = RTTI_BSTextureSet;
13  inline static constexpr auto Ni_RTTI = NiRTTI_BSTextureSet;
14 
15  struct Textures
16  {
17  enum Texture : std::uint32_t
18  {
19  kDiffuse = 0,
31 
32  kTotal
33  };
34  };
36 
37  ~BSTextureSet() override; // 00
38 
39  // override (NiObject)
40  const NiRTTI* GetRTTI() const override; // 02
41  void LoadBinary(NiStream& a_stream) override; // 18
42  void LinkObject(NiStream& a_stream) override; // 19
43  bool RegisterStreamables(NiStream& a_stream) override; // 1A
44  void SaveBinary(NiStream& a_stream) override; // 1B
45  bool IsEqual(NiObject* a_object) override; // 1C
46 
47  // add
48  virtual const char* GetTexturePath(Texture a_texture) = 0; // 25
49  virtual void SetTexture(Texture a_texture, NiSourceTexture* a_srcTexture) = 0; // 26
50  virtual void SetTexturePath(Texture a_texture, const char* a_path) = 0; // 27
51  };
52  static_assert(sizeof(BSTextureSet) == 0x10);
53 }
Definition: BSTextureSet.h:10
void SaveBinary(NiStream &a_stream) override
virtual const char * GetTexturePath(Texture a_texture)=0
const NiRTTI * GetRTTI() const override
virtual void SetTexturePath(Texture a_texture, const char *a_path)=0
static constexpr auto Ni_RTTI
Definition: BSTextureSet.h:13
void LoadBinary(NiStream &a_stream) override
bool RegisterStreamables(NiStream &a_stream) override
void LinkObject(NiStream &a_stream) override
~BSTextureSet() override
bool IsEqual(NiObject *a_object) override
static constexpr auto RTTI
Definition: BSTextureSet.h:12
virtual void SetTexture(Texture a_texture, NiSourceTexture *a_srcTexture)=0
Definition: NiObject.h:37
Definition: NiRTTI.h:6
Definition: NiSourceTexture.h:21
Definition: NiStream.h:6
Definition: AbsorbEffect.h:6
constexpr REL::ID NiRTTI_BSTextureSet
Definition: Offsets_NiRTTI.h:127
constexpr REL::ID RTTI_BSTextureSet
Definition: Offsets_RTTI.h:3621
Definition: BSTextureSet.h:16
Texture
Definition: BSTextureSet.h:18
@ kMultilayer
Definition: BSTextureSet.h:28
@ kSubsurfaceTint
Definition: BSTextureSet.h:23
@ kHeight
Definition: BSTextureSet.h:26
@ kDetailMap
Definition: BSTextureSet.h:25
@ kEnvironmentMask
Definition: BSTextureSet.h:22
@ kTotal
Definition: BSTextureSet.h:32
@ kEnvironment
Definition: BSTextureSet.h:27
@ kBacklightMask
Definition: BSTextureSet.h:29
@ kDiffuse
Definition: BSTextureSet.h:19
@ kGlowMap
Definition: BSTextureSet.h:24
@ kNormal
Definition: BSTextureSet.h:20
@ kGloss
Definition: BSTextureSet.h:21
@ kSpecular
Definition: BSTextureSet.h:30