52 lines
3.0 KiB
C++
52 lines
3.0 KiB
C++
#pragma once
|
|
|
|
#include "RE/D/_D3DBLEND.h"
|
|
#include "RE/D/_D3DBLENDOP.h"
|
|
#include "RE/D/_D3DCMPFUNC.h"
|
|
|
|
namespace RE
|
|
{
|
|
class EffectShaderData
|
|
{
|
|
public:
|
|
// members
|
|
REX::TEnumSet<_D3DBLEND, std::int32_t> textureBlendModeSource; // 00
|
|
REX::TEnumSet<_D3DBLENDOP, std::int32_t> textureBlendOperation; // 04
|
|
REX::TEnumSet<_D3DCMPFUNC, std::int32_t> textureZTestFunction; // 08
|
|
std::uint32_t fillColor1; // 0C
|
|
float fillAlphaFadeInTime; // 10
|
|
float fillAlphaFullTime; // 14
|
|
float fillAlphaFadeOutTime; // 18
|
|
float fillAlphaPersistentPercent; // 1C
|
|
float fillAlphaPulseAmplitude; // 20
|
|
float fillAlphaPulseFrequency; // 24
|
|
float fillTextureUAnimSpeed; // 28
|
|
float fillTextureVAnimSpeed; // 2C
|
|
float edgeExponentValue; // 30
|
|
std::uint32_t edgeColor; // 34
|
|
float edgeAlphaFadeInTime; // 38
|
|
float edgeAlphaFullTime; // 3C
|
|
float edgeAlphaFadeOutTime; // 40
|
|
float edgeAlphaPersistentPercent; // 44
|
|
float edgeAlphaPulseAmplitude; // 48
|
|
float edgeAlphaPulseFrequency; // 4C
|
|
float fillAlphaFullPercent; // 50
|
|
float edgeAlphaFullPercent; // 54
|
|
REX::TEnumSet<_D3DBLEND, std::int32_t> textureBlendModeDest; // 58
|
|
float alphaTestStartTime; // 5C
|
|
float alphaTestEndTime; // 60
|
|
float alphaTestStartValue; // 64
|
|
float alphaTestEndValue; // 68
|
|
BGSSoundDescriptorForm* ambientSound; // 70
|
|
std::uint32_t fillColor2; // 78
|
|
std::uint32_t fillColor3; // 7C
|
|
float fillColorScaleA[3]; // 80
|
|
float fillColorTimeA[3]; // 8C
|
|
std::uint32_t flags; // 98
|
|
float fillTextureUScale; // 9C
|
|
float fillTextureVScale; // A0
|
|
std::int8_t boneDepth; // A4
|
|
};
|
|
static_assert(sizeof(EffectShaderData) == 0xA8);
|
|
}
|