UNiagaraDataInterfaceCurveBase

Base class for curve data interfaces which facilitates handling the curve data in a standardized way.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Niagara

Header

/Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceCurveBase.h

Include

#include "NiagaraDataInterfaceCurveBase.h"

Syntax

[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(EditInlineNew, Category="Curves", Meta=(DisplayName="Float Curve"))
class UNiagaraDataInterfaceCurveBase : public UNiagaraDataInterface

Remarks

Base class for curve data interfaces which facilitates handling the curve data in a standardized way.

Variables

Name Description

Public variable UProperty Category, EditAnywhere, AdvancedDisplay, Meta

uint32: 1

 

bExposeCurve

Generates a texture for the curve which can be exposed to material bindings.

Public variable UProperty Category, EditAnywhere, AdvancedDisplay

uint32: 1

 

bOptimizeLUT

Do we optimize the LUT, this saves memory but may introduce errors.

Public variable UProperty Category, EditAnywhere, AdvancedDisplay

uint32: 1

 

bOverrideOptimizeThreshold

Public variable UProperty Category, EditAnywhere, AdvancedDisplay

uint32: 1

 

bUseLUT

Public variable UProperty Category, EditAnywhere, AdvancedDisplay, Meta

FName

 

ExposedName

Sets a custom name for the binding to make it easier to identify.

Public variable UProperty

UTexture2D *...

 

ExposedTexture

The texture generated and exposed to materials, will be nullptr if we do not expose to the renderers.

Public variable UProperty Transient

uint32: 1

 

HasEditorData

Protected variable UProperty

float

 

LUTInvTimeRange

Protected variable UProperty

float

 

LUTMaxTime

Protected variable UProperty

float

 

LUTMinTime

Protected variable UProperty

float

 

LUTNumSamplesMinusOne

Public variable UProperty Category, EditAnywhere, AdvancedDisplay, Meta

float

 

OptimizeThreshold

Threshold used to optimize the LUT.

Protected variable UProperty

TArray< float >

 

ShaderLUT

Constructors

Functions

Name Description

Public function Virtual Const

TArray< floa...

 

BuildLUT

(
    int32 NumEntries
)

Protected function Virtual Const

bool

 

CompareLUTS

(
    const TArray< float >& OtherLUT
)

Public function Virtual

void

 

GetCurveData

(
    TArray< FCurveData >& OutCurveData
)

Gets information for all of the curves owned by this curve data interface.

Public function Virtual Const

int32

 

GetCurveNumElems()

Public function Const

float

 

GetInvTimeRange()

Public function Const

float

 

GetMaxTime()

Public function Const

float

 

GetMinTime()

Protected function Const

float

 

NormalizeTime

(
    float T
)

Remap a sample time for this curve to 0 to 1 between first and last keys for LUT access.

Public function

void

 

OptimizeLUT()

Public function

void

 

SetDefaultLUT()

Protected function Const

float

 

UnnormalizeTime

(
    float T
)

Remap a 0 to 1 value between the first and last keys to a real sample time for this curve.

Public function

void

 

UpdateExposedTexture()

Public function

void

 

UpdateLUT

(
    bool bFromSerialize
)

Public function Virtual

void

 

UpdateTimeRanges()

Overridden from UNiagaraDataInterface

Name Description

Public function Virtual Const

bool

 

CanExecuteOnTarget

(
    ENiagaraSimTarget Target
)

Public function Virtual Const

bool

 

CanExposeVariables()

Protected function Virtual Const

bool

 

CopyToInternal

(
    UNiagaraDataInterface* Destina...
)

Public function Virtual Const

bool

 

Equals

(
    const UNiagaraDataInterface* O...
)

Determines if this DataInterface is the same as another.

Public function Virtual

TArray< FNia...

 

GetErrors()

Refreshes and returns the errors detected with the corresponding data, if any.

Public function Virtual Const

void

 

GetExposedVariables

(
    TArray< FNiagaraVariableBase >& Ou...
)

Public function Virtual Const

bool

 

GetExposedVariableValue

(
    const FNiagaraVariableBase& InVari...,
    void* InPerInstanceData,
    FNiagaraSystemInstance* InSyst...,
    void* OutData
)

Public function Virtual

void

 

GetParameterDefinitionHLSL

(
    const FNiagaraDataInterfaceGPUParam...,
    FString& OutHLSL
)

Protected function Virtual

void

 

PushToRenderThreadImpl()

Overridden from UNiagaraDataInterfaceBase

Name Description

Public function Virtual

void

 

BindParameters

(
    FNiagaraDataInterfaceParametersCS&...,
    const FNiagaraDataInterfaceGPUParam...,
    const FShaderParameterMap& Paramet...
)

Methods that operate on an instance of type FNiagaraDataInterfaceParametersCS*, created by the above CreateComputeParameters() method

Public function Virtual Const

FNiagaraData...

 

CreateComputeParameters()

Constructs the correct CS parameter type for this DI (if any).

Public function Virtual Const

const FTypeL...

 

GetComputeParametersTypeDesc()

Public function Virtual Const

void

 

SetParameters

(
    const FNiagaraDataInterfaceParamete...,
    FRHICommandList& RHICmdList,
    const FNiagaraDataInterfaceSetArgs ...
)

Public function Virtual Const

void

 

UnsetParameters

(
    const FNiagaraDataInterfaceParamete...,
    FRHICommandList& RHICmdList,
    const FNiagaraDataInterfaceSetArgs ...
)

Overridden from UObject

Name Description

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

Called when a property on this object has been modified externally

Public function Virtual

void

 

PostLoad()

Do any object-specific cleanup required immediately after loading an object.

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

Handles reading, writing, and reference collecting using FArchive.

Classes

Name

Description

Public struct

FCurveData

Structure to facilitate getting standardized curve information from a curve data interface.

Constants

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss