CommonLibVR
BSMaterialObject.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTArray.h"
4 #include "RE/N/NiColor.h"
5 #include "RE/N/NiPoint3.h"
6 #include "RE/N/NiSmartPointer.h"
7 
8 namespace RE
9 {
10  class NiProperty;
11 
13  {
14  public:
15  inline static constexpr auto RTTI = RTTI_BSMaterialObject;
16  inline static constexpr auto VTABLE = VTABLE_BSMaterialObject;
17 
18  struct DIRECTIONAL_DATA // DATA
19  {
20  public:
21  enum class Flag
22  {
23  kNone = 0,
24  kSnow = 1 << 0
25  };
26 
27  // members
28  float falloffScale; // 00
29  float falloffBias; // 04
30  float noiseUVScale; // 08
31  float materialUVScale; // 0C
33  float normalDampener; // 1C
35  std::int32_t singlePass; // 2C
37  std::uint32_t unk2C; // 34
38  };
39  static_assert(sizeof(DIRECTIONAL_DATA) == 0x38);
40 
41  virtual ~BSMaterialObject(); // 00
42 
43  // add
44  virtual void EnsureLoaded(); // 01 - { return; }
45 
46  // members
49  private:
50  KEEP_FOR_RE()
51  };
52  static_assert(sizeof(BSMaterialObject) == 0x58);
53 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: BSMaterialObject.h:13
static constexpr auto RTTI
Definition: BSMaterialObject.h:15
DIRECTIONAL_DATA directionalData
Definition: BSMaterialObject.h:47
virtual void EnsureLoaded()
virtual ~BSMaterialObject()
static constexpr auto VTABLE
Definition: BSMaterialObject.h:16
BSTArray< NiPointer< NiProperty > > properties
Definition: BSMaterialObject.h:48
Definition: BSTArray.h:378
Definition: NiColor.h:11
Definition: NiPoint3.h:6
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSMaterialObject(static_cast< std::uint64_t >(685249))
constexpr std::array< REL::ID, 1 > VTABLE_BSMaterialObject
Definition: Offsets_VTABLE.h:9242
Definition: BSMaterialObject.h:19
float falloffScale
Definition: BSMaterialObject.h:28
std::uint32_t unk2C
Definition: BSMaterialObject.h:37
NiPoint3 ProjectionDir
Definition: BSMaterialObject.h:32
float falloffBias
Definition: BSMaterialObject.h:29
std::int32_t singlePass
Definition: BSMaterialObject.h:35
float normalDampener
Definition: BSMaterialObject.h:33
NiColor singlePassColor
Definition: BSMaterialObject.h:34
stl::enumeration< Flag, std::uint32_t > flags
Definition: BSMaterialObject.h:36
Flag
Definition: BSMaterialObject.h:22
float materialUVScale
Definition: BSMaterialObject.h:31
float noiseUVScale
Definition: BSMaterialObject.h:30