CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
RE::ShaderReferenceEffect Class Reference

#include <ShaderReferenceEffect.h>

Inheritance diagram for RE::ShaderReferenceEffect:
RE::ReferenceEffect RE::BSTempEffect RE::NiObject RE::NiRefObject

Classes

struct  ParticleShader
 
struct  TextureRequest
 

Public Types

enum class  Flag { kNone = 0 , kVisible = 1 << 0 , kInterfaceEffect = 1 << 1 , kAllowTargetRoot = 1 << 7 }
 

Public Member Functions

 ~ShaderReferenceEffect () override
 
const NiRTTI * GetRTTI () const override
 
bool Update (float a_arg1) override
 
NiAVObject * Get3D () const override
 
TEMP_EFFECT_TYPE GetType () const override
 
void SaveGame (BGSSaveGameBuffer *a_buf) override
 
void LoadGame (BGSLoadGameBuffer *a_buf) override
 
void FinishLoadGame (BGSLoadGameBuffer *a_buf) override
 
bool IsInterfaceEffect () const override
 
void SetInterfaceEffect (bool a_set) override
 
bool GetStackable () const override
 
bool GetStackableMatch (BSTempEffect *a_effect) const override
 
void Push () override
 
void Pop () override
 
void Init () override
 
void Suspend () override
 
void Resume () override
 
void ClearTarget () override
 
void UpdatePosition () override
 
NiAVObject * GetAttachRoot () override
 
void DetachImpl () override
 
- Public Member Functions inherited from RE::ReferenceEffect
 ~ReferenceEffect () override
 
const NiRTTI * GetRTTI () const override
 
void Detach () override
 
bool Update (float a_arg1) override
 
bool GetManagerHandlesSaveLoad () const override
 
bool GetClearWhenCellIsUnloaded () const override
 
TEMP_EFFECT_TYPE GetType () const override
 
void SaveGame (BGSSaveGameBuffer *a_buf) override
 
void LoadGame (BGSLoadGameBuffer *a_buf) override
 
void FinishLoadGame (BGSLoadGameBuffer *a_buf) override
 
virtual void Init ()
 
virtual void Suspend ()
 
virtual void Resume ()
 
virtual void ClearTarget ()
 
virtual void UpdateParentCell (NiAVObject *a_object)
 
virtual void UpdatePosition ()
 
virtual NiAVObject * GetAttachRoot ()
 
virtual bool GetAttached ()
 
virtual void DetachImpl ()
 
- Public Member Functions inherited from RE::BSTempEffect
 ~BSTempEffect () override
 
const NiRTTI * GetRTTI () const override
 
NiNode * AsNode () override
 
NiSwitchNode * AsSwitchNode () override
 
BSFadeNode * AsFadeNode () override
 
BSMultiBoundNode * AsMultiBoundNode () override
 
BSGeometry * AsGeometry () override
 
NiTriStrips * AsTriStrips () override
 
BSTriShape * AsTriShape () override
 
BSSegmentedTriShape * AsSegmentedTriShape () override
 
BSSubIndexTriShape * AsSubIndexTriShape () override
 
BSDynamicTriShape * AsDynamicTriShape () override
 
NiGeometry * AsNiGeometry () override
 
NiTriBasedGeom * AsNiTriBasedGeom () override
 
NiTriShape * AsNiTriShape () override
 
NiParticles * AsParticlesGeom () override
 
BSLines * AsLinesGeom () override
 
bhkNiCollisionObject * AsBhkNiCollisionObject () override
 
bhkBlendCollisionObject * AsBhkBlendCollisionObject () override
 
bhkAttachmentCollisionObject * AsBhkAttachmentCollisionObject () override
 
bhkRigidBody * AsBhkRigidBody () override
 
bhkLimitedHingeConstraint * AsBhkLimitedHingeConstraint () override
 
virtual void Initialize ()
 
virtual void Attach ()
 
virtual void Detach ()
 
virtual bool Update (float a_arg1)
 
virtual NiAVObject * Get3D () const
 
virtual bool GetManagerHandlesSaveLoad () const
 
virtual bool GetClearWhenCellIsUnloaded () const
 
virtual TEMP_EFFECT_TYPE GetType () const
 
virtual void SaveGame (BGSSaveGameBuffer *a_buf)
 
virtual void LoadGame (BGSLoadGameBuffer *a_buf)
 
virtual void FinishLoadGame (BGSLoadGameBuffer *a_buf)
 
virtual bool IsInterfaceEffect () const
 
virtual void SetInterfaceEffect (bool a_set)
 
virtual bool GetStackable () const
 
virtual bool GetStackableMatch (BSTempEffect *a_effect) const
 
virtual void Push ()
 
virtual void Pop ()
 
template<class T , class = std::enable_if_t< std::negation_v< std::disjunction< std::is_pointer<T>, std::is_reference<T>, std::is_const<T>, std::is_volatile<T>>>>>
T * As () noexcept
 
template<class T , class = std::enable_if_t< std::negation_v< std::disjunction< std::is_pointer<T>, std::is_reference<T>, std::is_const<T>, std::is_volatile<T>>>>>
const T * As () const noexcept
 
- Public Member Functions inherited from RE::NiObject
 ~NiObject () override=default
 
virtual const NiRTTI * GetRTTI () const
 
virtual NiNode * AsNode ()
 
virtual NiSwitchNode * AsSwitchNode ()
 
virtual BSFadeNode * AsFadeNode ()
 
virtual BSMultiBoundNode * AsMultiBoundNode ()
 
virtual BSGeometry * AsGeometry ()
 
virtual NiTriStrips * AsTriStrips ()
 
virtual BSTriShape * AsTriShape ()
 
virtual BSSegmentedTriShape * AsSegmentedTriShape ()
 
virtual BSSubIndexTriShape * AsSubIndexTriShape ()
 
virtual BSDynamicTriShape * AsDynamicTriShape ()
 
virtual NiGeometry * AsNiGeometry ()
 
virtual NiTriBasedGeom * AsNiTriBasedGeom ()
 
virtual NiTriShape * AsNiTriShape ()
 
virtual NiParticles * AsParticlesGeom ()
 
virtual BSLines * AsLinesGeom ()
 
virtual bhkNiCollisionObject * AsBhkNiCollisionObject ()
 
virtual bhkBlendCollisionObject * AsBhkBlendCollisionObject ()
 
virtual bhkAttachmentCollisionObject * AsBhkAttachmentCollisionObject ()
 
virtual bhkRigidBody * AsBhkRigidBody ()
 
virtual bhkLimitedHingeConstraint * AsBhkLimitedHingeConstraint ()
 
virtual NiObject * CreateClone (NiCloningProcess &a_cloning)
 
virtual void LoadBinary (NiStream &a_stream)
 
virtual void LinkObject (NiStream &a_stream)
 
virtual bool RegisterStreamables (NiStream &a_stream)
 
virtual void SaveBinary (NiStream &a_stream)
 
virtual bool IsEqual (NiObject *a_object)
 
virtual void ProcessClone (NiCloningProcess &a_cloning)
 
virtual void PostLinkObject (NiStream &a_stream)
 
virtual bool StreamCanSkip ()
 
virtual const NiRTTI * GetStreamableRTTI () const
 
virtual std::uint32_t GetBlockAllocationSize () const
 
virtual NiObjectGroup * GetGroup () const
 
virtual void SetGroup (NiObjectGroup *a_group)
 
virtual NiControllerManager * AsNiControllerManager ()
 
void CreateDeepCopy (NiPointer< NiObject > &a_object)
 
- Public Member Functions inherited from RE::NiRefObject
 NiRefObject ()
 
virtual ~NiRefObject ()
 
virtual void DeleteThis ()
 
void IncRefCount ()
 
void DecRefCount ()
 
constexpr std::uint32_t GetRefCount () const noexcept
 
 TES_HEAP_REDEFINE_NEW ()
 

Public Attributes

BSTArray< TextureRequest > textureRequests
 
BSTArray< NiPointer< NiAVObject > > addonModels
 
BSTArray< void * > unk078
 
BSTArray< ParticleShader > particleShaders
 
BSTArray< void * > unk0A8
 
BSSoundHandle soundHandle
 
std::uint32_t pad0CC
 
NiPointer< NiSourceTexture > particleShaderTexture
 
NiPointer< NiSourceTexture > particlePaletteTexture
 
NiPointer< NiSourceTexture > fillTexture
 
NiPointer< NiSourceTexture > holesTexture
 
NiPointer< NiSourceTexture > paletteTexture
 
NiPointer< NiAVObject > lastRootNode
 
TESBoundObject * wornObject
 
TESEffectShader * effectData
 
BSEffectShaderData * effectShaderData
 
NiPointer< NiAVObject > targetRoot
 
float unk120
 
float unk124
 
float addonModelsScaleStart
 
std::uint32_t unk12C
 
stl::enumeration< Flag, std::uint32_t > flags
 
std::uint32_t pushCount
 
- Public Attributes inherited from RE::ReferenceEffect
ReferenceEffectController * controller
 
ObjectRefHandle target
 
ObjectRefHandle aimAtTarget
 
bool finished
 
bool ownController
 
std::uint16_t pad42
 
std::uint32_t pad44
 
- Public Attributes inherited from RE::BSTempEffect
float lifetime
 
std::uint32_t pad14
 
TESObjectCELL * cell
 
float age
 
bool initialized
 
std::uint8_t pad25
 
std::uint16_t pad26
 
std::uint32_t effectID
 
std::uint32_t pad2C
 
- Public Attributes inherited from RE::NiRefObject
volatile std::uint32_t _refCount { 0 }
 
std::uint32_t _pad0C { 0 }
 

Static Public Attributes

static constexpr auto RTTI = RTTI_ShaderReferenceEffect
 
static constexpr auto Ni_RTTI = NiRTTI_ShaderReferenceEffect
 
static constexpr auto VTABLE = VTABLE_ShaderReferenceEffect
 
static constexpr auto TYPE = TEMP_EFFECT_TYPE::kRefShader
 
- Static Public Attributes inherited from RE::ReferenceEffect
static constexpr auto RTTI = RTTI_ReferenceEffect
 
static constexpr auto Ni_RTTI = NiRTTI_ReferenceEffect
 
static constexpr auto TYPE = TEMP_EFFECT_TYPE::kRefDefault
 
- Static Public Attributes inherited from RE::BSTempEffect
static constexpr auto RTTI = RTTI_BSTempEffect
 
static constexpr auto Ni_RTTI = NiRTTI_BSTempEffect
 
static constexpr auto TYPE = TEMP_EFFECT_TYPE::kDefault
 
- Static Public Attributes inherited from RE::NiObject
static constexpr auto RTTI = RTTI_NiObject
 
static constexpr auto Ni_RTTI = NiRTTI_NiObject
 
- Static Public Attributes inherited from RE::NiRefObject
static constexpr auto RTTI = RTTI_NiRefObject
 

Additional Inherited Members

- Static Public Member Functions inherited from RE::NiRefObject
static volatile std::uint32_t * GetTotalObjectCount ()
 

Member Enumeration Documentation

◆ Flag

Enumerator
kNone 
kVisible 
kInterfaceEffect 
kAllowTargetRoot 

Constructor & Destructor Documentation

◆ ~ShaderReferenceEffect()

RE::ShaderReferenceEffect::~ShaderReferenceEffect ( )
override

Member Function Documentation

◆ ClearTarget()

void RE::ShaderReferenceEffect::ClearTarget ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ DetachImpl()

void RE::ShaderReferenceEffect::DetachImpl ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ FinishLoadGame()

void RE::ShaderReferenceEffect::FinishLoadGame ( BGSLoadGameBuffer *  a_buf)
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ Get3D()

NiAVObject * RE::ShaderReferenceEffect::Get3D ( ) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ GetAttachRoot()

NiAVObject * RE::ShaderReferenceEffect::GetAttachRoot ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ GetRTTI()

const NiRTTI * RE::ShaderReferenceEffect::GetRTTI ( ) const
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ GetStackable()

bool RE::ShaderReferenceEffect::GetStackable ( ) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ GetStackableMatch()

bool RE::ShaderReferenceEffect::GetStackableMatch ( BSTempEffect *  a_effect) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ GetType()

TEMP_EFFECT_TYPE RE::ShaderReferenceEffect::GetType ( ) const
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ Init()

void RE::ShaderReferenceEffect::Init ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ IsInterfaceEffect()

bool RE::ShaderReferenceEffect::IsInterfaceEffect ( ) const
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ LoadGame()

void RE::ShaderReferenceEffect::LoadGame ( BGSLoadGameBuffer *  a_buf)
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ Pop()

void RE::ShaderReferenceEffect::Pop ( )
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ Push()

void RE::ShaderReferenceEffect::Push ( )
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ Resume()

void RE::ShaderReferenceEffect::Resume ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ SaveGame()

void RE::ShaderReferenceEffect::SaveGame ( BGSSaveGameBuffer *  a_buf)
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ SetInterfaceEffect()

void RE::ShaderReferenceEffect::SetInterfaceEffect ( bool  a_set)
overridevirtual

Reimplemented from RE::BSTempEffect.

◆ Suspend()

void RE::ShaderReferenceEffect::Suspend ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ Update()

bool RE::ShaderReferenceEffect::Update ( float  a_arg1)
overridevirtual

Reimplemented from RE::ReferenceEffect.

◆ UpdatePosition()

void RE::ShaderReferenceEffect::UpdatePosition ( )
overridevirtual

Reimplemented from RE::ReferenceEffect.

Member Data Documentation

◆ addonModels

BSTArray<NiPointer<NiAVObject> > RE::ShaderReferenceEffect::addonModels

◆ addonModelsScaleStart

float RE::ShaderReferenceEffect::addonModelsScaleStart

◆ effectData

TESEffectShader* RE::ShaderReferenceEffect::effectData

◆ effectShaderData

BSEffectShaderData* RE::ShaderReferenceEffect::effectShaderData

◆ fillTexture

NiPointer<NiSourceTexture> RE::ShaderReferenceEffect::fillTexture

◆ flags

stl::enumeration<Flag, std::uint32_t> RE::ShaderReferenceEffect::flags

◆ holesTexture

NiPointer<NiSourceTexture> RE::ShaderReferenceEffect::holesTexture

◆ lastRootNode

NiPointer<NiAVObject> RE::ShaderReferenceEffect::lastRootNode

◆ Ni_RTTI

constexpr auto RE::ShaderReferenceEffect::Ni_RTTI = NiRTTI_ShaderReferenceEffect
inlinestaticconstexpr

◆ pad0CC

std::uint32_t RE::ShaderReferenceEffect::pad0CC

◆ paletteTexture

NiPointer<NiSourceTexture> RE::ShaderReferenceEffect::paletteTexture

◆ particlePaletteTexture

NiPointer<NiSourceTexture> RE::ShaderReferenceEffect::particlePaletteTexture

◆ particleShaders

BSTArray<ParticleShader> RE::ShaderReferenceEffect::particleShaders

◆ particleShaderTexture

NiPointer<NiSourceTexture> RE::ShaderReferenceEffect::particleShaderTexture

◆ pushCount

std::uint32_t RE::ShaderReferenceEffect::pushCount

◆ RTTI

constexpr auto RE::ShaderReferenceEffect::RTTI = RTTI_ShaderReferenceEffect
inlinestaticconstexpr

◆ soundHandle

BSSoundHandle RE::ShaderReferenceEffect::soundHandle

◆ targetRoot

NiPointer<NiAVObject> RE::ShaderReferenceEffect::targetRoot

◆ textureRequests

BSTArray<TextureRequest> RE::ShaderReferenceEffect::textureRequests

◆ TYPE

constexpr auto RE::ShaderReferenceEffect::TYPE = TEMP_EFFECT_TYPE::kRefShader
inlinestaticconstexpr

◆ unk078

BSTArray<void*> RE::ShaderReferenceEffect::unk078

◆ unk0A8

BSTArray<void*> RE::ShaderReferenceEffect::unk0A8

◆ unk120

float RE::ShaderReferenceEffect::unk120

◆ unk124

float RE::ShaderReferenceEffect::unk124

◆ unk12C

std::uint32_t RE::ShaderReferenceEffect::unk12C

◆ VTABLE

constexpr auto RE::ShaderReferenceEffect::VTABLE = VTABLE_ShaderReferenceEffect
inlinestaticconstexpr

◆ wornObject

TESBoundObject* RE::ShaderReferenceEffect::wornObject

The documentation for this class was generated from the following file: