UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FAnimNode_CurveSource Struct Reference

#include <AnimNode_CurveSource.h>

+ Inheritance diagram for FAnimNode_CurveSource:

Public Member Functions

ANIMGRAPHRUNTIME_API FAnimNode_CurveSource ()
 
virtual bool HasPreUpdate () const override
 
virtual ANIMGRAPHRUNTIME_API void PreUpdate (const UAnimInstance *InAnimInstance) override
 
virtual ANIMGRAPHRUNTIME_API void Evaluate_AnyThread (FPoseContext &Output) override
 
virtual ANIMGRAPHRUNTIME_API void Update_AnyThread (const FAnimationUpdateContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void Initialize_AnyThread (const FAnimationInitializeContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void CacheBones_AnyThread (const FAnimationCacheBonesContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void GatherDebugData (FNodeDebugData &DebugData) override
 
- Public Member Functions inherited from FAnimNode_Base
virtual ENGINE_API void EvaluateComponentSpace_AnyThread (FComponentSpacePoseContext &Output)
 
virtual bool CanUpdateInWorkerThread () const
 
virtual bool NeedsDynamicReset () const
 
virtual ENGINE_API void ResetDynamics (ETeleportType InTeleportType)
 
virtual void PostCompile (const class USkeleton *InSkeleton)
 
virtual bool NeedsOnInitializeAnimInstance () const
 
virtual ~FAnimNode_Base ()
 
virtual void ResetDynamics ()
 
virtual bool WantsSkippedUpdates () const
 
virtual void OnUpdatesSkipped (TArrayView< const FAnimationUpdateContext * > SkippedUpdateContexts)
 
virtual void OverrideAsset (class UAnimationAsset *NewAsset)
 
ENGINE_API const FExposedValueHandlerGetEvaluateGraphExposedInputs () const
 
void SetExposedValueHandler (const FExposedValueHandler *Handler)
 
int32 GetNodeIndex () const
 
const IAnimClassInterfaceGetAnimClassInterface () const
 

Public Attributes

FPoseLink SourcePose
 
FName SourceBinding
 
float Alpha
 
TScriptInterface< ICurveSourceInterfaceCurveSource
 

Additional Inherited Members

- Protected Member Functions inherited from FAnimNode_Base
template<typename DataType >
const DataType & GetData (UE::Anim::FNodeDataId InId, const UObject *InObject=nullptr) const
 
template<typename DataType >
DataType * GetInstanceDataPtr (UE::Anim::FNodeDataId InId, UObject *InObject=nullptr)
 
ENGINE_API bool IsLODEnabled (FAnimInstanceProxy *AnimInstanceProxy)
 
virtual int32 GetLODThreshold () const
 
virtual ENGINE_API void OnInitializeAnimInstance (const FAnimInstanceProxy *InProxy, const UAnimInstance *InAnimInstance)
 

Detailed Description

Supply curves from some external source (e.g. audio)

Constructor & Destructor Documentation

◆ FAnimNode_CurveSource()

FAnimNode_CurveSource::FAnimNode_CurveSource ( )

Member Function Documentation

◆ CacheBones_AnyThread()

void FAnimNode_CurveSource::CacheBones_AnyThread ( const FAnimationCacheBonesContext Context)
overridevirtual

Called to cache any bones that this node needs to track (e.g. in a FBoneReference). This is usually called at startup when LOD switches occur. This can be called on any thread.

Parameters
ContextContext structure providing access to relevant data

Reimplemented from FAnimNode_Base.

◆ Evaluate_AnyThread()

void FAnimNode_CurveSource::Evaluate_AnyThread ( FPoseContext Output)
overridevirtual

Called to evaluate local-space bones transforms according to the weights set up in Update(). You should implement either Evaluate or EvaluateComponentSpace, but not both of these. This can be called on any thread.

Parameters
OutputOutput structure to write pose or curve data to. Also provides access to relevant data as a context.

Reimplemented from FAnimNode_Base.

◆ GatherDebugData()

void FAnimNode_CurveSource::GatherDebugData ( FNodeDebugData DebugData)
overridevirtual

Called to gather on-screen debug data. This is called on the game thread.

Parameters
DebugDataDebug data structure used to output any relevant data

Reimplemented from FAnimNode_Base.

◆ HasPreUpdate()

virtual bool FAnimNode_CurveSource::HasPreUpdate ( ) const
inlineoverridevirtual

Override this to indicate that PreUpdate() should be called on the game thread (usually to gather non-thread safe data) before Update() is called. Note that this is called at load on the UAnimInstance CDO to avoid needing to call this at runtime. This is called on the game thread.

Reimplemented from FAnimNode_Base.

◆ Initialize_AnyThread()

void FAnimNode_CurveSource::Initialize_AnyThread ( const FAnimationInitializeContext Context)
overridevirtual

Called when the node first runs. If the node is inside a state machine or cached pose branch then this can be called multiple times. This can be called on any thread.

Parameters
ContextContext structure providing access to relevant data

Reimplemented from FAnimNode_Base.

◆ PreUpdate()

void FAnimNode_CurveSource::PreUpdate ( const UAnimInstance InAnimInstance)
overridevirtual

Override this to perform game-thread work prior to non-game thread Update() being called

Reimplemented from FAnimNode_Base.

◆ Update_AnyThread()

void FAnimNode_CurveSource::Update_AnyThread ( const FAnimationUpdateContext Context)
overridevirtual

Called to update the state of the graph relative to this node. Generally this should configure any weights (etc.) that could affect the poses that will need to be evaluated. This function is what usually executes EvaluateGraphExposedInputs. This can be called on any thread.

Parameters
ContextContext structure providing access to relevant data

Reimplemented from FAnimNode_Base.

Member Data Documentation

◆ Alpha

float FAnimNode_CurveSource::Alpha

How much we wan to blend the curve in by

◆ CurveSource

TScriptInterface<ICurveSourceInterface> FAnimNode_CurveSource::CurveSource

Our bound source

◆ SourceBinding

FName FAnimNode_CurveSource::SourceBinding

The binding of the curve source we want to bind to. We will bind to an object that implements ICurveSourceInterface. First we check the actor that owns this (if any), then we check each of its components to see if we should bind to the source that matches this name.

◆ SourcePose

FPoseLink FAnimNode_CurveSource::SourcePose

The documentation for this struct was generated from the following files: