UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FDynamicSpriteEmitterData Struct Reference

#include <ParticleHelper.h>

+ Inheritance diagram for FDynamicSpriteEmitterData:

Public Member Functions

 FDynamicSpriteEmitterData (const UParticleModuleRequired *RequiredModule)
 
 ~FDynamicSpriteEmitterData ()
 
void Init (bool bInSelected)
 
virtual int32 GetDynamicVertexStride (ERHIFeatureLevel::Type InFeatureLevel) const override
 
virtual int32 GetDynamicParameterVertexStride () const override
 
virtual const FDynamicSpriteEmitterReplayDataBaseGetSourceData () const override
 
bool GetVertexAndIndexData (void *VertexData, void *DynamicParameterVertexData, void *FillIndexData, FParticleOrder *ParticleOrder, const FVector &InCameraPosition, const FMatrix &InLocalToWorld, uint32 InstanceFactor) const
 
virtual void GatherSimpleLights (const FParticleSystemSceneProxy *Proxy, const FSceneViewFamily &ViewFamily, FSimpleLightArray &OutParticleLights) const override
 
virtual void GetDynamicMeshElementsEmitter (const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const override
 
virtual void UpdateRenderThreadResourcesEmitter (const FParticleSystemSceneProxy *InOwnerProxy) override
 
virtual const FDynamicEmitterReplayDataBaseGetSource () const override
 
- Public Member Functions inherited from FDynamicSpriteEmitterDataBase
 FDynamicSpriteEmitterDataBase (const UParticleModuleRequired *RequiredModule)
 
virtual ~FDynamicSpriteEmitterDataBase ()
 
const FMaterialRenderProxyGetMaterialRenderProxy ()
 
void SortSpriteParticles (int32 SortMode, bool bLocalSpace, int32 ParticleCount, const uint8 *ParticleData, int32 ParticleStride, const uint16 *ParticleIndices, const FSceneView *View, const FMatrix &LocalToWorld, FParticleOrder *ParticleOrder) const
 
virtual void GetIndexAllocInfo (int32 &OutNumIndices, int32 &OutStride) const
 
virtual void RenderDebug (const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const
 
virtual void DoBufferFill (FAsyncBufferFillData &Me) const
 
void BuildViewFillData (const FParticleSystemSceneProxy *Proxy, const FSceneView *InView, int32 InVertexCount, int32 InVertexSize, int32 InDynamicParameterVertexSize, FGlobalDynamicIndexBuffer &DynamicIndexBuffer, FGlobalDynamicVertexBuffer &DynamicVertexBuffer, FGlobalDynamicVertexBufferAllocation &DynamicVertexAllocation, FGlobalDynamicIndexBufferAllocation &DynamicIndexAllocation, FGlobalDynamicVertexBufferAllocation *DynamicParameterAllocation, FAsyncBufferFillData &Data) const
 
- Public Member Functions inherited from FDynamicEmitterDataBase
 FDynamicEmitterDataBase (const class UParticleModuleRequired *RequiredModule)
 
virtual ~FDynamicEmitterDataBase ()
 
voidoperator new (size_t Size)
 
void operator delete (void *RawMemory, size_t Size)
 
virtual void ReleaseRenderThreadResources (const FParticleSystemSceneProxy *InOwnerProxy)
 
virtual const FMacroUVOverrideGetMacroUVOverride () const
 

Public Attributes

FDynamicSpriteEmitterReplayData Source
 
FParticleSpriteUniformParameters UniformParameters
 
- Public Attributes inherited from FDynamicSpriteEmitterDataBase
const FMaterialRenderProxyMaterialResource
 
uint32 bUsesDynamicParameter:1
 
- Public Attributes inherited from FDynamicEmitterDataBase
TStatId StatID
 
uint32 bSelected:1
 
uint32 bValid:1
 
int32 EmitterIndex
 

Detailed Description

Dynamic emitter data for sprite emitters

Constructor & Destructor Documentation

◆ FDynamicSpriteEmitterData()

FDynamicSpriteEmitterData::FDynamicSpriteEmitterData ( const UParticleModuleRequired RequiredModule)
inline

◆ ~FDynamicSpriteEmitterData()

FDynamicSpriteEmitterData::~FDynamicSpriteEmitterData ( )
inline

Member Function Documentation

◆ GatherSimpleLights()

void FDynamicSpriteEmitterData::GatherSimpleLights ( const FParticleSystemSceneProxy Proxy,
const FSceneViewFamily ViewFamily,
FSimpleLightArray OutParticleLights 
) const
overridevirtual

Gathers simple lights for this emitter.

Reimplemented from FDynamicEmitterDataBase.

◆ GetDynamicMeshElementsEmitter()

void FDynamicSpriteEmitterData::GetDynamicMeshElementsEmitter ( const FParticleSystemSceneProxy Proxy,
const FSceneView View,
const FSceneViewFamily ViewFamily,
int32  ViewIndex,
FMeshElementCollector Collector 
) const
overridevirtual

Reimplemented from FDynamicEmitterDataBase.

◆ GetDynamicParameterVertexStride()

virtual int32 FDynamicSpriteEmitterData::GetDynamicParameterVertexStride ( ) const
inlineoverridevirtual

Get the vertex stride for the dynamic parameter rendering data

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ GetDynamicVertexStride()

virtual int32 FDynamicSpriteEmitterData::GetDynamicVertexStride ( ERHIFeatureLevel::Type  InFeatureLevel) const
inlineoverridevirtual

Get the vertex stride for the dynamic rendering data

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ GetSource()

virtual const FDynamicEmitterReplayDataBase & FDynamicSpriteEmitterData::GetSource ( ) const
inlineoverridevirtual

Returns the source data for this particle system

Implements FDynamicEmitterDataBase.

◆ GetSourceData()

virtual const FDynamicSpriteEmitterReplayDataBase * FDynamicSpriteEmitterData::GetSourceData ( ) const
inlineoverridevirtual

Get the source replay data for this emitter

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ GetVertexAndIndexData()

bool FDynamicSpriteEmitterData::GetVertexAndIndexData ( void VertexData,
void DynamicParameterVertexData,
void FillIndexData,
FParticleOrder ParticleOrder,
const FVector InCameraPosition,
const FMatrix InLocalToWorld,
uint32  InstanceFactor 
) const

Retrieve the vertex and (optional) index required to render this emitter. Render-thread only

Parameters
VertexDataThe memory to fill the vertex data into
FillIndexDataThe index data to fill in
ParticleOrderThe (optional) particle ordering to use
InCameraPositionThe position of the camera in world space.
InLocalToWorldTransform from local to world space.
InstanceFactorThe factor to duplicate instances by.
Returns
bool true if successful, false if failed

◆ Init()

void FDynamicSpriteEmitterData::Init ( bool  bInSelected)

Initialize this emitter's dynamic rendering data, called after source data has been filled in

◆ UpdateRenderThreadResourcesEmitter()

void FDynamicSpriteEmitterData::UpdateRenderThreadResourcesEmitter ( const FParticleSystemSceneProxy InOwnerProxy)
overridevirtual

Create the render thread resources for this emitter data

Parameters
InOwnerProxyThe proxy that owns this dynamic emitter data
Returns
bool true if successful, false if failed

Reimplemented from FDynamicEmitterDataBase.

Member Data Documentation

◆ Source

FDynamicSpriteEmitterReplayData FDynamicSpriteEmitterData::Source

The frame source data for this particle system. This is everything needed to represent this this particle system frame. It does not include any transient rendering thread data. Also, for non-simulating 'replay' particle systems, this data may have come straight from disk!

◆ UniformParameters

FParticleSpriteUniformParameters FDynamicSpriteEmitterData::UniformParameters

Uniform parameters. Most fields are filled in when updates are sent to the rendering thread, some are per-view!


The documentation for this struct was generated from the following files: