Navigation
API > API/Plugins > API/Plugins/NiagaraCore
Base class for all Niagara data interfaces.
| Name | UNiagaraDataInterfaceBase |
| Type | class |
| Header File | /Engine/Plugins/FX/Niagara/Source/NiagaraCore/Public/NiagaraDataInterfaceBase.h |
| Include Path | #include "NiagaraDataInterfaceBase.h" |
Syntax
UCLASS (Abstract, EditInlineNew, MinimalAPI)
class UNiagaraDataInterfaceBase : public UNiagaraMergeable
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UNiagaraMergeable → UNiagaraDataInterfaceBase
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UNiagaraDataInterfaceBase
(
const FObjectInitializer& ObjectInitializer |
NiagaraDataInterfaceBase.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BuildShaderParameters
(
FNiagaraShaderParametersBuilder& ShaderParametersBuilder |
Override this method to provide parameters to the GPU (SRV / UAV / Constants / etc) The most common usage will be to provide a single structure which is nested with other parameters. | NiagaraDataInterfaceBase.h | |
virtual FNiagaraDataInterfaceParametersCS * CreateShaderStorage
(
const FNiagaraDataInterfaceGPUParamInfo& ParameterInfo, |
Optional storage that can be created per shader when not in legacy binding mode. | NiagaraDataInterfaceBase.h | |
virtual const FTypeLayoutDesc * GetShaderStorageType () |
If we create shader storage we must also supply the type of the storage so we understand how to serialize it. | NiagaraDataInterfaceBase.h | |
virtual bool HasInternalAttributeReads
(
const UNiagaraEmitter* OwnerEmitter, |
Returns true if the DI (owned by OwnerEmitter) reads any attributes from the Provider emitter | NiagaraDataInterfaceBase.h |