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

#include <ParticleHelper.h>

+ Inheritance diagram for FDynamicBeam2EmitterData:

Public Member Functions

 FDynamicBeam2EmitterData (const UParticleModuleRequired *RequiredModule)
 
 ~FDynamicBeam2EmitterData ()
 
void Init (bool bInSelected)
 
virtual void GetDynamicMeshElementsEmitter (const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const override
 
virtual void RenderDirectLine (const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View) const
 
virtual void RenderLines (const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View) const
 
virtual void RenderDebug (const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const override
 
int32 FillIndexData (struct FAsyncBufferFillData &Data) const
 
int32 FillVertexData_NoNoise (struct FAsyncBufferFillData &Data) const
 
int32 FillData_Noise (struct FAsyncBufferFillData &Data) const
 
int32 FillData_InterpolatedNoise (struct FAsyncBufferFillData &Data) const
 
virtual const FDynamicEmitterReplayDataBaseGetSource () const override
 
virtual void DoBufferFill (FAsyncBufferFillData &Me) const override
 
virtual int32 GetDynamicVertexStride (ERHIFeatureLevel::Type) const override
 
virtual int32 GetDynamicParameterVertexStride () const override
 
virtual void GetIndexAllocInfo (int32 &OutNumIndices, int32 &OutStride) 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 const FDynamicSpriteEmitterReplayDataBaseGetSourceData () 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 UpdateRenderThreadResourcesEmitter (const FParticleSystemSceneProxy *InOwnerProxy)
 
virtual void ReleaseRenderThreadResources (const FParticleSystemSceneProxy *InOwnerProxy)
 
virtual void GatherSimpleLights (const FParticleSystemSceneProxy *Proxy, const FSceneViewFamily &ViewFamily, FSimpleLightArray &OutParticleLights) const
 
virtual const FMacroUVOverrideGetMacroUVOverride () const
 

Public Attributes

FDynamicBeam2EmitterReplayData Source
 
int32 LastFramePreRendered
 
- 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
 

Static Public Attributes

static const uint32 MaxBeams = 2 * 1024
 
static const uint32 MaxInterpolationPoints = 250
 
static const uint32 MaxNoiseFrequency = 250
 

Detailed Description

Dynamic emitter data for Beam emitters

Constructor & Destructor Documentation

◆ FDynamicBeam2EmitterData()

FDynamicBeam2EmitterData::FDynamicBeam2EmitterData ( const UParticleModuleRequired RequiredModule)
inline

◆ ~FDynamicBeam2EmitterData()

FDynamicBeam2EmitterData::~FDynamicBeam2EmitterData ( )

Member Function Documentation

◆ DoBufferFill()

void FDynamicBeam2EmitterData::DoBufferFill ( FAsyncBufferFillData Me) const
overridevirtual

Perform the actual work of filling the buffer

Perform the actual work of filling the buffer, often called from another thread

Parameters
MeFill data structure

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ FillData_InterpolatedNoise()

int32 FDynamicBeam2EmitterData::FillData_InterpolatedNoise ( struct FAsyncBufferFillData Data) const

◆ FillData_Noise()

int32 FDynamicBeam2EmitterData::FillData_Noise ( struct FAsyncBufferFillData Data) const

◆ FillIndexData()

int32 FDynamicBeam2EmitterData::FillIndexData ( struct FAsyncBufferFillData Data) const

◆ FillVertexData_NoNoise()

int32 FDynamicBeam2EmitterData::FillVertexData_NoNoise ( struct FAsyncBufferFillData Data) const

◆ GetDynamicMeshElementsEmitter()

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

Reimplemented from FDynamicEmitterDataBase.

◆ GetDynamicParameterVertexStride()

virtual int32 FDynamicBeam2EmitterData::GetDynamicParameterVertexStride ( ) const
inlineoverridevirtual

Get the vertex stride for the dynamic parameter rendering data

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ GetDynamicVertexStride()

virtual int32 FDynamicBeam2EmitterData::GetDynamicVertexStride ( ERHIFeatureLevel::Type  ) const
inlineoverridevirtual

Get the vertex stride for the dynamic rendering data

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ GetIndexAllocInfo()

void FDynamicBeam2EmitterData::GetIndexAllocInfo ( int32 OutNumIndices,
int32 OutStride 
) const
overridevirtual

Gets the information required for allocating this emitters indices from the global index array.

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ GetSource()

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

Returns the source data for this particle system

Implements FDynamicEmitterDataBase.

◆ Init()

void FDynamicBeam2EmitterData::Init ( bool  bInSelected)

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

◆ RenderDebug()

void FDynamicBeam2EmitterData::RenderDebug ( const FParticleSystemSceneProxy Proxy,
FPrimitiveDrawInterface PDI,
const FSceneView View,
bool  bCrosses 
) const
overridevirtual

Debug rendering

Parameters
ProxyThe primitive scene proxy for the emitter.
PDIThe primitive draw interface to render with
ViewThe scene view being rendered
bCrossesIf true, render Crosses at particle position; false, render points

Reimplemented from FDynamicSpriteEmitterDataBase.

◆ RenderDirectLine()

void FDynamicBeam2EmitterData::RenderDirectLine ( const FParticleSystemSceneProxy Proxy,
FPrimitiveDrawInterface PDI,
const FSceneView View 
) const
virtual

◆ RenderLines()

void FDynamicBeam2EmitterData::RenderLines ( const FParticleSystemSceneProxy Proxy,
FPrimitiveDrawInterface PDI,
const FSceneView View 
) const
virtual

Member Data Documentation

◆ LastFramePreRendered

int32 FDynamicBeam2EmitterData::LastFramePreRendered

◆ MaxBeams

const uint32 FDynamicBeam2EmitterData::MaxBeams = 2 * 1024
static

◆ MaxInterpolationPoints

const uint32 FDynamicBeam2EmitterData::MaxInterpolationPoints = 250
static

◆ MaxNoiseFrequency

const uint32 FDynamicBeam2EmitterData::MaxNoiseFrequency = 250
static

◆ Source

FDynamicBeam2EmitterReplayData FDynamicBeam2EmitterData::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!


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