CommonLibVR
BSMultiStreamInstanceTriShape.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace RE
6 {
8  {
9  public:
10  inline static constexpr auto RTTI = RTTI_BSMultiStreamInstanceTriShape;
11  inline static constexpr auto Ni_RTTI = NiRTTI_BSMultiStreamInstanceTriShape;
12  inline static constexpr auto VTABLE = VTABLE_BSMultiStreamInstanceTriShape;
13 
15 
16  // override (BSInstanceTriShape)
17  const NiRTTI* GetRTTI() const override; // 02
18  NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
19  void OnVisible(NiCullingProcess& a_process) override; // 34
20  void Unk_37(void) override; // 37
21  void BeginAddingInstances(std::uint32_t a_numFloatsPerInstance) override; // 38
22  void AddInstances(std::uint32_t a_numFloatsPerInstance, std::uint16_t& a_instanceData) override; // 39
23  void DoneAddingInstances(BSTArray<std::uint32_t>& a_instances) override; // 3A
24  bool GetIsAddingInstances() override; // 3B
25  std::uint32_t AddGroup(std::uint32_t a_numInstances, std::uint16_t& a_instanceData, std::uint32_t a_arg3, float a_arg4) override; // 3C
26  void RemoveGroup(std::uint32_t a_numInstance) override; // 3D
27 
28  // members
30  std::uint32_t unk178; // 178
31  std::uint32_t unk17C; // 17C
32  std::uint64_t unk180; // 180
33  std::uint64_t unk188; // 188
34  std::uint32_t unk190; // 190
35  std::uint32_t unk194; // 194
36  std::uint32_t unk198; // 198
37  private:
38  KEEP_FOR_RE()
39  };
40 #ifndef SKYRIMVR
41  static_assert(sizeof(BSMultiStreamInstanceTriShape) == 0x1A0);
42 #else
43  static_assert(sizeof(BSMultiStreamInstanceTriShape) == 0x1E0);
44 #endif
45 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: BSInstanceTriShape.h:9
Definition: BSMultiStreamInstanceTriShape.h:8
void BeginAddingInstances(std::uint32_t a_numFloatsPerInstance) override
static constexpr auto Ni_RTTI
Definition: BSMultiStreamInstanceTriShape.h:11
std::uint32_t unk17C
Definition: BSMultiStreamInstanceTriShape.h:31
std::uint64_t unk180
Definition: BSMultiStreamInstanceTriShape.h:32
std::uint64_t unk188
Definition: BSMultiStreamInstanceTriShape.h:33
static constexpr auto VTABLE
Definition: BSMultiStreamInstanceTriShape.h:12
std::uint32_t unk194
Definition: BSMultiStreamInstanceTriShape.h:35
std::uint32_t unk198
Definition: BSMultiStreamInstanceTriShape.h:36
void DoneAddingInstances(BSTArray< std::uint32_t > &a_instances) override
const NiRTTI * GetRTTI() const override
std::uint32_t AddGroup(std::uint32_t a_numInstances, std::uint16_t &a_instanceData, std::uint32_t a_arg3, float a_arg4) override
std::uint32_t unk190
Definition: BSMultiStreamInstanceTriShape.h:34
std::uint32_t unk178
Definition: BSMultiStreamInstanceTriShape.h:30
static constexpr auto RTTI
Definition: BSMultiStreamInstanceTriShape.h:10
void OnVisible(NiCullingProcess &a_process) override
void RemoveGroup(std::uint32_t a_numInstance) override
BSTArray< void * > unk160
Definition: BSMultiStreamInstanceTriShape.h:29
void AddInstances(std::uint32_t a_numFloatsPerInstance, std::uint16_t &a_instanceData) override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
Definition: NiCloningProcess.h:10
Definition: NiCullingProcess.h:34
Definition: NiObject.h:37
Definition: NiRTTI.h:6
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BSMultiStreamInstanceTriShape
Definition: Offsets_VTABLE.h:9260
constexpr REL::ID RTTI_BSMultiStreamInstanceTriShape(static_cast< std::uint64_t >(690705))
constexpr REL::ID NiRTTI_BSMultiStreamInstanceTriShape(static_cast< std::uint64_t >(524606))