Navigation
API > API/Plugins > API/Plugins/Niagara
Inheritance Hierarchy
- FFXSystemInterface
- FNiagaraGpuComputeDispatchInterface
References
| Module | Niagara |
| Header | /Engine/Plugins/FX/Niagara/Source/Niagara/Public/NiagaraGpuComputeDispatchInterface.h |
| Include | #include "NiagaraGpuComputeDispatchInterface.h" |
Syntax
class FNiagaraGpuComputeDispatchInterface : public FFXSystemInterface
Remarks
Public API for Niagara's Compute Dispatcher This is generally used with DataInterfaces or Custom Renderers
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bIsFirstViewFamily | ||
| bool | bIsLastViewFamily | ||
| bool | bIsOutsideSceneRenderer | ||
| UE::FMutex | ComputeManagerGuard | ||
| TUniquePtr< FNiagaraEmptyUAVPool > | EmptyUAVPoolPtr | ||
| ERHIFeatureLevel::Type | FeatureLevel | ||
| TUniquePtr< FNiagaraGpuComputeDebug > | GpuComputeDebugPtr | ||
| TArray< TPair< FName, TUniquePtr< FNiagaraGpuComputeDataManager > > > | GpuDataManagers | ||
| FNiagaraGPUInstanceCountManager | GPUInstanceCounterManager | GPU emitter instance count buffer. Contains the actual particle / instance count generate in the GPU tick. | |
| TUniquePtr< FNiagaraGpuReadbackManager > | GpuReadbackManagerPtr | ||
| FOnPostPreRenderEvent | OnPostRenderEvent | ||
| FOnPreInitViewsEvent | OnPreInitViewsEvent | ||
| FOnPostPreRenderEvent | OnPreRenderEvent | ||
| EShaderPlatform | ShaderPlatform | ||
| TConstStridedView< FSceneView > | SimulationSceneViews |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FNiagaraGpuComputeDispatchInterface
(
EShaderPlatform InShaderPlatform, |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddDebugReadback
(
FNiagaraSystemInstanceID InstanceID, |
Debug only function to readback data. | |
| void | AddGpuComputeProxy
(
FNiagaraSystemGpuComputeProxy* ComputeProxy |
Add system instance proxy to the batcher for tracking. | |
| void | AddNDCDataProxy
(
FNiagaraDataChannelDataProxyPtr NDCDataProxy |
Add NDC Data to the batcher for tracking | |
| bool | AddSortedGPUSimulation
(
FRHICommandListBase& RHICmdList, |
Register work for GPU sorting (using the GPUSortManager). | |
| bool | AddSortedGPUSimulation
(
FNiagaraGPUSortInfo& SortInfo |
||
| void | This will flush all pending ticks & readbacks from the dispatcher. | ||
| void | Call this to force all pending ticks to be flushed from the batcher. | ||
| FNiagaraGpuComputeDispatchInterface * | Get
(
UWorld* World |
||
| FNiagaraGpuComputeDispatchInterface * | Get
(
FSceneInterface* Scene |
||
| FNiagaraGpuComputeDispatchInterface * | Get
(
FFXSystemInterface* FXSceneInterface |
||
| FNiagaraAsyncGpuTraceHelper & | |||
| FRDGTextureRef | GetBlackTexture
(
FRDGBuilder& GraphBuilder, |
Helper function to return an RDG Texture where the texture contains 0 for all channels. | |
| FRDGTextureSRVRef | GetBlackTextureSRV
(
FRDGBuilder& GraphBuilder, |
Helper function to return a RDG Texture SRV where the texture contains 0 for all channels. | |
| FRDGBufferSRVRef | GetEmptyBufferSRV
(
FRDGBuilder& GraphBuilder, |
Helper function to return a Buffer SRV which will contain 1 element of 0 value, i.e. to use as a dummy binding. | |
| FRDGBufferUAVRef | GetEmptyBufferUAV
(
FRDGBuilder& GraphBuilder, |
Helper function to return a Buffer UAV you don't care about the contents of or the results, i.e. to use as a dummy binding. | |
| FRDGTextureUAVRef | GetEmptyTextureUAV
(
FRDGBuilder& GraphBuilder, |
Helper function to return a RDG Texture UAV you don't care about the contents of or the results, i.e. to use as a dummy binding. | |
| FRHIUnorderedAccessView * | GetEmptyUAVFromPool
(
FRHICommandList& RHICmdList, |
Convenience wrapper to get a UAV from the pool. | |
| FNiagaraEmptyUAVPool * | Get access to Niagara's GpuReadbackManager. | ||
| ERHIFeatureLevel::Type | Get FeatureLevel the batcher is bound to | ||
| const FGlobalDistanceFieldParameterData * | Get access to the global distance field data This will return nullptr if you attempt to access at an invalid point (i.e. before GDF is prepared or the GDF is not available) | ||
| FNiagaraGpuComputeDebugInterface | Public interface to Niagara compute debugging. | ||
| FNiagaraGpuComputeDebug * | Get access to Niagara's GpuComputeDebug this is for internal use | ||
| const FNiagaraGPUInstanceCountManager & | |||
| FNiagaraGPUInstanceCountManager & | Get access to the instance count manager. | ||
| FNiagaraGpuReadbackManager * | Get access to Niagara's GpuReadbackManager. | ||
| FOnPostPreRenderEvent & | Event that broadcast at the end of PostRenderOpaque. | ||
| FOnPreInitViewsEvent & | Event that broadcast when we enter PreInitViews. | ||
| FOnPostPreRenderEvent & | Event that broadcast when we endter PreRender. | ||
| TManager & | Get or create the a data manager, must be done on the rendering thread only. | ||
| EShaderPlatform | Get ShaderPlatform the batcher is bound to | ||
| TConstStridedView< FSceneView > | Get access to the Views the simulation is being rendered with. | ||
| bool | |||
| bool | |||
| bool | |||
| void | MultiGPUResourceModified
(
FRHICommandList& RHICmdList, |
||
| void | MultiGPUResourceModified
(
FRDGBuilder& GraphBuilder, |
||
| void | MultiGPUResourceModified
(
FRDGBuilder& GraphBuilder, |
||
| void | MultiGPUResourceModified
(
FRHICommandList& RHICmdList, |
||
| void | ProcessDebugReadbacks
(
FRHICommandList& RHICmdList, |
Processes all pending debug readbacks | |
| void | RemoveGpuComputeProxy
(
FNiagaraSystemGpuComputeProxy* ComputeProxy |
Remove system instance proxy from the batcher. | |
| void | RemoveNDCDataProxy
(
FNiagaraDataChannelDataProxyPtr NDCDataProxy |
Add NDC Data to the batcher for tracking |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FOnPostPreRenderEvent | |||
| FOnPreInitViewsEvent |