Navigation
API > API/Plugins > API/Plugins/Niagara
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UNiagaraMergeable
- UNiagaraDataInterfaceBase
- UNiagaraDataInterface
- UNiagaraDataInterfaceRWBase
- UNiagaraDataInterfaceGrid3D
- UNiagaraDataInterfaceGrid3DCollection
- UNiagaraDataInterfaceGrid3DCollectionReader
References
| Module | Niagara |
| Header | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceGrid3DCollection.h |
| Include | #include "NiagaraDataInterfaceGrid3DCollection.h" |
Syntax
UCLASS (EditInlineNew, Category="Grid", CollapseCategories, Meta=(DisplayName="Grid3D Collection"),
Blueprintable, BlueprintType, MinimalAPI)
class UNiagaraDataInterfaceGrid3DCollection : public UNiagaraDataInterfaceGrid3D
Variables
| Type | Name | Description | |
|---|---|---|---|
| uint8: 1 | bOverrideFormat | ||
| uint8: 1 | bPreviewGrid | ||
| int32 | NumAttributes | Number of attributes stored on the grid. | |
| ENiagaraGpuBufferFormat | OverrideBufferFormat | When enabled overrides the format used to store data inside the grid, otherwise uses the project default setting. | |
| FName | PreviewAttribute | ||
| FNiagaraUserParameterBinding | RenderTargetUserParameter | Reference to a user parameter if we're reading one. | |
| TMap< FNiagaraSystemInstanceID, FGrid3DCollectionRWInstanceData_GameThread * > | SystemInstancesToProxyData_GT |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UNiagaraDataInterfaceGrid3DCollection
(
const FObjectInitializer& ObjectInitializer |
Functions
| Type | Name | Description | |
|---|---|---|---|
| bool | CanCreateVarFromFuncName
(
const FName& FuncName |
||
| void | CollectAttributesForScript
(
UNiagaraScript* Script, |
||
| bool | FillRawVolumeTexture
(
const UNiagaraComponent* Component, |
||
| bool | FillVolumeTexture
(
const UNiagaraComponent* Component, |
Fills a texture render target 2d with the current data from the simulation #todo(dmp): this will eventually go away when we formalize how data makes it out of Niagara #todo(dmp): reimplement for 3d | |
| void | FindAttributes
(
TArray< FNiagaraVariableBase >& OutVariables, |
Finds all attributes by locating the data interface amongst the parameter stores. | |
| int32 | GetComponentCountFromFuncName
(
const FName& FuncName |
||
| void | GetRawTextureSize
(
const UNiagaraComponent* Component, |
||
| TMap< FNiagaraSystemInstanceID, FGrid3DCollectionRWInstanceData_GameThread * > & | |||
| void | GetTextureSize
(
const UNiagaraComponent* Component, |
||
| FNiagaraTypeDefinition | GetValueTypeFromFuncName
(
const FName& FuncName |
||
| FName | TypeDefinitionToAttributeIndexFunctionName
(
const FNiagaraTypeDefinition& InDef |
||
| FName | TypeDefinitionToGetFunctionName
(
const FNiagaraTypeDefinition& InDef |
||
| const TCHAR * | TypeDefinitionToHLSLTypeString
(
const FNiagaraTypeDefinition& InDef |
||
| FName | TypeDefinitionToSetFunctionName
(
const FNiagaraTypeDefinition& InDef |
||
| void | VMGetAttributeIndex
(
FVectorVMExternalFunctionContext& Context, |
||
| void | VMGetCellSize
(
FVectorVMExternalFunctionContext& Context |
||
| void | VMGetNumCells
(
FVectorVMExternalFunctionContext& Context |
||
| void | VMGetWorldBBoxSize
(
FVectorVMExternalFunctionContext& Context |
||
| void | VMSetNumCells
(
FVectorVMExternalFunctionContext& Context |
||
| void | VMUnitToFloatIndex
(
FVectorVMExternalFunctionContext& Context |
||
| void | WriteAttributeGetIndexHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | WriteGetAtIndexHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | WriteGetHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | WriteSampleAtIndexHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | WriteSampleHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | WriteSetAtIndexHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | WriteSetHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
Overridden from UNiagaraDataInterface
| Type | Name | Description | |
|---|---|---|---|
| bool | AppendCompileHash
(
FNiagaraCompileHashVisitor* InVisitor |
Allows the generic class defaults version of this class to specify any dependencies/version/etc that might invalidate the compile. | |
| bool | |||
| bool | CopyToInternal
(
UNiagaraDataInterface* Destination |
||
| void | DestroyPerInstanceData
(
void* PerInstanceData, |
Destroys the per instance data for this interface. | |
| bool | Equals
(
const UNiagaraDataInterface* Other |
Determines if this DataInterface is the same as another. | |
| bool | GenerateIterationSourceNamespaceReadAttributesHLSL
(
FNiagaraDataInterfaceGPUParamInfo& DIInstanceInfo, |
Generate the necessary plumbing HLSL at the beginning of the stage where this is used as a sim stage iteration source. | |
| bool | GenerateIterationSourceNamespaceWriteAttributesHLSL
(
FNiagaraDataInterfaceGPUParamInfo& DIInstanceInfo, |
Generate the necessary plumbing HLSL at the end of the stage where this is used as a sim stage iteration source. | |
| bool | GenerateSetupHLSL
(
FNiagaraDataInterfaceGPUParamInfo& DIInstanceInfo, |
Generate the necessary HLSL to set up data when being added as a sim stage sim source. | |
| bool | GenerateTeardownHLSL
(
FNiagaraDataInterfaceGPUParamInfo& DIInstanceInfo, |
Generate the necessary HLSL to tear down data when being added as a sim stage sim source. | |
| void | GetExposedVariables
(
TArray< FNiagaraVariableBase >& OutVariables |
||
| bool | GetExposedVariableValue
(
const FNiagaraVariableBase& InVariable, |
||
| void | GetFeedback
(
UNiagaraSystem* InAsset, |
Query the data interface to give feedback to the end user. | |
| bool | GetFunctionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
||
| void | GetFunctionsInternal
(
TArray< FNiagaraFunctionSignature >& OutFunctions |
||
| ENiagaraGpuDispatchType | |||
| void | GetParameterDefinitionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
GPU sim functionality. | |
| void | GetVMExternalFunction
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
VM functionality. | |
| bool | |||
| bool | |||
| bool | InitPerInstanceData
(
void* PerInstanceData, |
Initializes the per instance data for this interface. | |
| int32 | Returns the size of the per instance data for this interface. | ||
| bool | PerInstanceTick
(
void* PerInstanceData, |
Ticks the per instance data for this interface, if it has any. | |
| bool | PerInstanceTickPostSimulate
(
void* PerInstanceData, |
||
| void | ProvidePerInstanceDataForRenderThread
(
void* DataForRenderThread, |
Subclasses that wish to work with GPU systems/emitters must implement this. | |
| void | SetShaderParameters
(
const FNiagaraDataInterfaceSetShaderParametersContext& Context |
Set the shader parameters will only be called if the data interface provided shader parameters. | |
| bool | ShouldCompile
(
EShaderPlatform ShaderPlatform |
GPU sim functionality. | |
| bool | Can this data interface be used as a StackContext parameter map replacement when being used as a sim stage iteration source? | ||
| bool | Does this data interface need setup and teardown for each stage when working a sim stage sim source? | ||
| bool | UpgradeFunctionCall
(
FNiagaraFunctionSignature& FunctionSignature |
Allows data interfaces the opportunity to rename / change the function signature and perform an upgrade. |
Overridden from UNiagaraDataInterfaceBase
| Type | Name | Description | |
|---|---|---|---|
| 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. | |
| FNiagaraDataInterfaceParametersCS * | CreateShaderStorage
(
const FNiagaraDataInterfaceGPUParamInfo& ParameterInfo, |
Optional storage that can be created per shader when not in legacy binding mode. | |
| const FTypeLayoutDesc * | If we create shader storage we must also supply the type of the storage so we understand how to serialize it. |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | Called after the C++ constructor and after the properties have been initialized, including those loaded from config. |