UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FParticleSimulationGPU Class Reference

Public Member Functions

 FParticleSimulationGPU ()
 
 ~FParticleSimulationGPU ()
 
void InitResources (const TArray< uint32 > &Tiles, FGPUSpriteResources *InGPUSpriteResources)
 
void CreateVectorFieldVisualizationVertexFactory (FRHICommandListBase &RHICmdList, ERHIFeatureLevel::Type InFeatureLevel)
 
void Destroy ()
 
void Destroy_RenderThread ()
 
void BeginReleaseResources ()
 

Public Attributes

FFXSystemFXSystem
 
FParticleTileVertexBuffer TileVertexBuffer
 
TRefCountPtr< FGPUSpriteResourcesGPUSpriteResources
 
const FParticleEmitterSimulationResourcesEmitterSimulationResources
 
FParticlePerFrameSimulationParameters PerFrameSimulationParameters
 
FBox Bounds
 
TArray< FNewParticleNewParticles
 
TArray< uint32TilesToClear
 
FVectorFieldInstance LocalVectorField
 
FGPUParticleVertexBuffer VertexBuffer
 
FVectorFieldVisualizationVertexFactoryVectorFieldVisualizationVertexFactory
 
int32 SimulationIndex
 
EParticleSimulatePhase::Type SimulationPhase
 
bool bWantsCollision
 
EParticleCollisionMode::Type CollisionMode
 
bool bDirty_GameThread
 
bool bReleased_GameThread
 
bool bDestroyed_GameThread
 
bool bEnabled
 

Detailed Description

Resources for simulating a set of particles on the GPU.

Constructor & Destructor Documentation

◆ FParticleSimulationGPU()

FParticleSimulationGPU::FParticleSimulationGPU ( )
inline

Default constructor.

◆ ~FParticleSimulationGPU()

FParticleSimulationGPU::~FParticleSimulationGPU ( )
inline

Destructor.

Member Function Documentation

◆ BeginReleaseResources()

void FParticleSimulationGPU::BeginReleaseResources ( )
inline

Enqueues commands to release render resources.

◆ CreateVectorFieldVisualizationVertexFactory()

void FParticleSimulationGPU::CreateVectorFieldVisualizationVertexFactory ( FRHICommandListBase RHICmdList,
ERHIFeatureLevel::Type  InFeatureLevel 
)
inline

Create and initializes a visualization vertex factory if needed.

◆ Destroy()

void FParticleSimulationGPU::Destroy ( )
inline

Release and destroy simulation resources.

◆ Destroy_RenderThread()

void FParticleSimulationGPU::Destroy_RenderThread ( )
inline

Destroy the simulation on the rendering thread.

◆ InitResources()

void FParticleSimulationGPU::InitResources ( const TArray< uint32 > &  Tiles,
FGPUSpriteResources InGPUSpriteResources 
)

Initializes resources for simulating particles on the GPU.

Parameters
TilesThe list of tiles to include in the simulation.
InEmitterSimulationResourcesThe emitter resources used by this simulation.

Member Data Documentation

◆ bDestroyed_GameThread

bool FParticleSimulationGPU::bDestroyed_GameThread

◆ bDirty_GameThread

bool FParticleSimulationGPU::bDirty_GameThread

Flag that specifies the simulation's resources are dirty and need to be updated.

◆ bEnabled

bool FParticleSimulationGPU::bEnabled

Allows disabling of simulation.

◆ Bounds

FBox FParticleSimulationGPU::Bounds

Bounds for particles in the simulation.

◆ bReleased_GameThread

bool FParticleSimulationGPU::bReleased_GameThread

◆ bWantsCollision

bool FParticleSimulationGPU::bWantsCollision

True if the simulation wants collision enabled.

◆ CollisionMode

EParticleCollisionMode::Type FParticleSimulationGPU::CollisionMode

◆ EmitterSimulationResources

const FParticleEmitterSimulationResources* FParticleSimulationGPU::EmitterSimulationResources

The per-emitter simulation resources.

◆ FXSystem

FFXSystem* FParticleSimulationGPU::FXSystem

Pointer the the FX system with which the simulation is associated.

◆ GPUSpriteResources

TRefCountPtr<FGPUSpriteResources> FParticleSimulationGPU::GPUSpriteResources

Reference to the GPU sprite resources.

◆ LocalVectorField

FVectorFieldInstance FParticleSimulationGPU::LocalVectorField

Local vector field.

◆ NewParticles

TArray<FNewParticle> FParticleSimulationGPU::NewParticles

A list of new particles to inject in to the simulation for this emitter.

◆ PerFrameSimulationParameters

FParticlePerFrameSimulationParameters FParticleSimulationGPU::PerFrameSimulationParameters

The per-frame simulation uniform buffer.

◆ SimulationIndex

int32 FParticleSimulationGPU::SimulationIndex

The simulation index within the associated FX system.

◆ SimulationPhase

EParticleSimulatePhase::Type FParticleSimulationGPU::SimulationPhase

The phase in which these particles should simulate.

◆ TilesToClear

TArray<uint32> FParticleSimulationGPU::TilesToClear

A list of tiles to clear that were newly allocated for this emitter.

◆ TileVertexBuffer

FParticleTileVertexBuffer FParticleSimulationGPU::TileVertexBuffer

The vertex buffer used to access tiles in the simulation.

◆ VectorFieldVisualizationVertexFactory

FVectorFieldVisualizationVertexFactory* FParticleSimulationGPU::VectorFieldVisualizationVertexFactory

The vertex factory for visualizing the local vector field.

◆ VertexBuffer

FGPUParticleVertexBuffer FParticleSimulationGPU::VertexBuffer

The vertex buffer used to access particles in the simulation.


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