CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
BSBloodSplatterShaderProperty.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/B/BSTArray.h"
5#include "RE/N/NiColor.h"
6#include "RE/N/NiPoint3.h"
7
8namespace RE
9{
10 class NiSourceTexture;
11
13 {
14 public:
15 inline static constexpr auto RTTI = RTTI_BSBloodSplatterShaderProperty;
16 inline static constexpr auto Ni_RTTI = NiRTTI_BSBloodSplatterShaderProperty;
17
18 enum : std::uint32_t
19 {
23
24 kTotal
25 };
26
28
29 // override (BSShaderProperty)
30 const NiRTTI* GetRTTI() const override; // 02
31 NiObject* CreateClone(NiCloningProcess& a_cloning) override; // 17
32 RenderPassArray* GetRenderPasses(BSGeometry* a_geometry, std::uint32_t a_arg2, BSShaderAccumulator* a_accumulator) override; // 2A
33 std::int32_t ForEachTexture(ForEachVisitor& a_visitor) override; // 33
34 std::int32_t QShader() override; // 35 - { return 12 }
35 NiSourceTexture* GetBaseTexture() override; // 37 - { return bloodColorTexture; }
36
37 // members
39 std::int32_t textureClampMode; // 0A0
40 float* alphaSource; // 0A8
41 };
42 static_assert(sizeof(BSBloodSplatterShaderProperty) == 0xB0);
43}
Definition: BSBloodSplatterShaderProperty.h:13
std::int32_t textureClampMode
Definition: BSBloodSplatterShaderProperty.h:39
static constexpr auto RTTI
Definition: BSBloodSplatterShaderProperty.h:15
std::int32_t QShader() override
static constexpr auto Ni_RTTI
Definition: BSBloodSplatterShaderProperty.h:16
@ kTotal
Definition: BSBloodSplatterShaderProperty.h:24
@ kBloodColor
Definition: BSBloodSplatterShaderProperty.h:20
@ kFlareColor
Definition: BSBloodSplatterShaderProperty.h:22
@ kBloodAlpha
Definition: BSBloodSplatterShaderProperty.h:21
NiPointer< NiSourceTexture > bloodTextures[kTotal]
Definition: BSBloodSplatterShaderProperty.h:38
float * alphaSource
Definition: BSBloodSplatterShaderProperty.h:40
const NiRTTI * GetRTTI() const override
RenderPassArray * GetRenderPasses(BSGeometry *a_geometry, std::uint32_t a_arg2, BSShaderAccumulator *a_accumulator) override
NiSourceTexture * GetBaseTexture() override
NiObject * CreateClone(NiCloningProcess &a_cloning) override
std::int32_t ForEachTexture(ForEachVisitor &a_visitor) override
Definition: BSGeometry.h:15
Definition: BSShaderProperty.h:26
Definition: BSShaderProperty.h:17
Definition: NiCloningProcess.h:10
Definition: NiObject.h:37
Definition: NiSmartPointer.h:9
Definition: NiRTTI.h:6
Definition: NiSourceTexture.h:21
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSBloodSplatterShaderProperty(static_cast< std::uint64_t >(692032))
constexpr REL::ID NiRTTI_BSBloodSplatterShaderProperty(static_cast< std::uint64_t >(527906))
Definition: BSShaderProperty.h:37