CommonLibSSE (Parapets fork)
NiAlphaProperty.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/N/NiProperty.h"
4 
5 namespace RE
6 {
7  class NiAlphaProperty : public NiProperty
8  {
9  public:
10  inline static constexpr auto RTTI = RTTI_NiAlphaProperty;
11  inline static constexpr auto Ni_RTTI = NiRTTI_NiAlphaProperty;
12 
13  enum class AlphaFunction
14  {
15  kOne = 0,
16  kZero = 1,
17  kSrcColor = 2,
18  kInvSrcColor = 3,
19  kDestColor = 4,
20  kInvDestColor = 5,
21  kSrcAlpha = 6,
22  kInvSrcAlpha = 7,
23  kDestAlpha = 8,
24  kInvDestAlpha = 9,
25  kSrcAlphaSat = 10
26  };
27 
28  ~NiAlphaProperty() override; // 00
29 
30  // override (NiProperty)
31  const NiRTTI* GetRTTI() const override; // 02
32  NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
33  void LoadBinary(NiStream& a_stream) override; // 18
34  void LinkObject(NiStream& a_stream) override; // 19 - { NiProperty::LinkObject(a_stream); }
35  bool RegisterStreamables(NiStream& a_stream) override; // 1A - { return NiProperty::RegisterStreamables(a_stream); }
36  void SaveBinary(NiStream& a_stream) override; // 1B
37  bool IsEqual(NiObject* a_object) override; // 1C
38  [[nodiscard]] Type GetType() const override; // 25 - { return Type::kAlpha; }
39 
40  // members
41  std::uint64_t unk30; // 30
42  };
43  static_assert(sizeof(NiAlphaProperty) == 0x38);
44 }
Definition: NiAlphaProperty.h:8
void LinkObject(NiStream &a_stream) override
void LoadBinary(NiStream &a_stream) override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
bool RegisterStreamables(NiStream &a_stream) override
Type GetType() const override
static constexpr auto Ni_RTTI
Definition: NiAlphaProperty.h:11
AlphaFunction
Definition: NiAlphaProperty.h:14
static constexpr auto RTTI
Definition: NiAlphaProperty.h:10
~NiAlphaProperty() override
void SaveBinary(NiStream &a_stream) override
const NiRTTI * GetRTTI() const override
bool IsEqual(NiObject *a_object) override
std::uint64_t unk30
Definition: NiAlphaProperty.h:41
Definition: NiObject.h:37
Definition: NiProperty.h:8
Type
Definition: NiProperty.h:14
Definition: NiRTTI.h:6
Definition: NiStream.h:6
Definition: AbsorbEffect.h:6
constexpr REL::ID NiRTTI_NiAlphaProperty
Definition: Offsets_NiRTTI.h:143
constexpr REL::ID RTTI_NiAlphaProperty
Definition: Offsets_RTTI.h:5301