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

#include <AnimNode_CallFunction.h>

+ Inheritance diagram for FAnimNode_CallFunction:

Public Member Functions

virtual ANIMGRAPHRUNTIME_API void OnInitializeAnimInstance (const FAnimInstanceProxy *InProxy, const UAnimInstance *InAnimInstance) override
 
virtual bool NeedsOnInitializeAnimInstance () const override
 
virtual ANIMGRAPHRUNTIME_API void GatherDebugData (FNodeDebugData &DebugData) override
 
virtual ANIMGRAPHRUNTIME_API void Update_AnyThread (const FAnimationUpdateContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void Evaluate_AnyThread (FPoseContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void Initialize_AnyThread (const FAnimationInitializeContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void CacheBones_AnyThread (const FAnimationCacheBonesContext &Context) override
 
ANIMGRAPHRUNTIME_API void CallFunctionFromCallSite (EAnimFunctionCallSite InCallSite, const FAnimationBaseContext &InContext) const
 
ANIMGRAPHRUNTIME_API const FAnimNodeFunctionRefGetFunction () const
 
- Public Member Functions inherited from FAnimNode_Base
virtual ENGINE_API void EvaluateComponentSpace_AnyThread (FComponentSpacePoseContext &Output)
 
virtual bool CanUpdateInWorkerThread () const
 
virtual bool HasPreUpdate () const
 
virtual void PreUpdate (const UAnimInstance *InAnimInstance)
 
virtual bool NeedsDynamicReset () const
 
virtual ENGINE_API void ResetDynamics (ETeleportType InTeleportType)
 
virtual void PostCompile (const class USkeleton *InSkeleton)
 
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 Source
 
FGraphTraversalCounter Counter
 
float CurrentWeight = 0.0f
 
EAnimFunctionCallSite CallSite = EAnimFunctionCallSite::OnUpdate
 

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
 

Detailed Description

Calls specified user-defined events/functions during anim graph execution

Member Function Documentation

◆ CacheBones_AnyThread()

void FAnimNode_CallFunction::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.

◆ CallFunctionFromCallSite()

void FAnimNode_CallFunction::CallFunctionFromCallSite ( EAnimFunctionCallSite  InCallSite,
const FAnimationBaseContext InContext 
) const

◆ Evaluate_AnyThread()

void FAnimNode_CallFunction::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_CallFunction::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.

◆ GetFunction()

const FAnimNodeFunctionRef & FAnimNode_CallFunction::GetFunction ( ) const

◆ Initialize_AnyThread()

void FAnimNode_CallFunction::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.

◆ NeedsOnInitializeAnimInstance()

virtual bool FAnimNode_CallFunction::NeedsOnInitializeAnimInstance ( ) const
inlineoverridevirtual

For nodes that need some kind of initialization that is not dependent on node relevancy (i.e. it is insufficient or inefficient to use Initialize_AnyThread), return true here. Note that this is called at load on the UAnimInstance CDO to avoid needing to call this at runtime.

Reimplemented from FAnimNode_Base.

◆ OnInitializeAnimInstance()

void FAnimNode_CallFunction::OnInitializeAnimInstance ( const FAnimInstanceProxy InProxy,
const UAnimInstance InAnimInstance 
)
overridevirtual

Called once, from game thread as the parent anim instance is created

Reimplemented from FAnimNode_Base.

◆ Update_AnyThread()

void FAnimNode_CallFunction::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

◆ CallSite

EAnimFunctionCallSite FAnimNode_CallFunction::CallSite = EAnimFunctionCallSite::OnUpdate

◆ Counter

FGraphTraversalCounter FAnimNode_CallFunction::Counter

◆ CurrentWeight

float FAnimNode_CallFunction::CurrentWeight = 0.0f

◆ Source

FPoseLink FAnimNode_CallFunction::Source

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