CommonLibSSE (powerof3)
TESLandTexture.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSTList.h"
4 #include "RE/F/FormTypes.h"
5 #include "RE/T/TESForm.h"
6 
7 namespace RE
8 {
9  struct TEXTURE_HAVOK_DATA // HNAM
10  {
11  std::int32_t friction; // 0
12  std::int32_t restitution; // 4
13  };
14  static_assert(sizeof(TEXTURE_HAVOK_DATA) == 0x8);
15 
16  class TESLandTexture : public TESForm
17  {
18  public:
19  inline static constexpr auto RTTI = RTTI_TESLandTexture;
20  inline static constexpr auto FORMTYPE = FormType::LandTexture;
21 
22  struct RecordFlags
23  {
24  enum RecordFlag : std::uint32_t
25  {
26  kDeleted = 1 << 5,
27  kIgnored = 1 << 12
28  };
29  };
30 
31  ~TESLandTexture() override; // 00
32 
33  // override (TESForm)
34  void InitializeData() override; // 04
35  void ClearData() override; // 05
36  bool Load(TESFile* a_mod) override; // 06
37  void InitItemImpl() override; // 13
38 
39  // members
40  BGSTextureSet* textureSet; // 20 - TNAM
43  std::int8_t specularExponent; // 38 - SNAM
44  std::uint8_t pad39; // 39
45  std::uint16_t pad3A; // 3A
46  std::int32_t shaderTextureIndex; // 3C - INAM
48  };
49  static_assert(sizeof(TESLandTexture) == 0x50);
50 }
Definition: BGSMaterialType.h:11
Definition: BGSTextureSet.h:16
Definition: BSTList.h:10
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: TESLandTexture.h:17
bool Load(TESFile *a_mod) override
static constexpr auto FORMTYPE
Definition: TESLandTexture.h:20
void ClearData() override
TEXTURE_HAVOK_DATA havokData
Definition: TESLandTexture.h:41
BSSimpleList< TESGrass * > textureGrassList
Definition: TESLandTexture.h:47
void InitItemImpl() override
std::uint16_t pad3A
Definition: TESLandTexture.h:45
BGSMaterialType * materialType
Definition: TESLandTexture.h:42
BGSTextureSet * textureSet
Definition: TESLandTexture.h:40
~TESLandTexture() override
std::int32_t shaderTextureIndex
Definition: TESLandTexture.h:46
std::uint8_t pad39
Definition: TESLandTexture.h:44
std::int8_t specularExponent
Definition: TESLandTexture.h:43
static constexpr auto RTTI
Definition: TESLandTexture.h:19
void InitializeData() override
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_TESLandTexture
Definition: Offsets_RTTI.h:6009
Definition: TESLandTexture.h:23
RecordFlag
Definition: TESLandTexture.h:25
@ kDeleted
Definition: TESLandTexture.h:26
@ kIgnored
Definition: TESLandTexture.h:27
Definition: TESLandTexture.h:10
std::int32_t restitution
Definition: TESLandTexture.h:12
std::int32_t friction
Definition: TESLandTexture.h:11