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

#include <AnimNode_PoseHandler.h>

+ Inheritance diagram for FAnimNode_PoseHandler:

Public Member Functions

 FAnimNode_PoseHandler ()
 
virtual float GetCurrentAssetTime () const
 
virtual float GetCurrentAssetLength () const
 
virtual ANIMGRAPHRUNTIME_API void Initialize_AnyThread (const FAnimationInitializeContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void CacheBones_AnyThread (const FAnimationCacheBonesContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void UpdateAssetPlayer (const FAnimationUpdateContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void GatherDebugData (FNodeDebugData &DebugData) override
 
virtual float GetAccumulatedTime () const
 
virtual void SetAccumulatedTime (float NewTime)
 
virtual UAnimationAssetGetAnimAsset () const
 
- Public Member Functions inherited from FAnimNode_AssetPlayerBase
 FAnimNode_AssetPlayerBase ()=default
 
virtual ENGINE_API void Update_AnyThread (const FAnimationUpdateContext &Context) final override
 
ENGINE_API void CreateTickRecordForNode (const FAnimationUpdateContext &Context, UAnimSequenceBase *Sequence, bool bLooping, float PlayRate, bool bIsEvaluator)
 
virtual FName GetGroupName () const
 
virtual EAnimGroupRole::Type GetGroupRole () const
 
virtual EAnimSyncMethod GetGroupMethod () const
 
virtual bool GetOverridePositionWhenJoiningSyncGroupAsLeader () const
 
virtual bool SetGroupName (FName InGroupName)
 
virtual bool SetGroupRole (EAnimGroupRole::Type InRole)
 
virtual bool SetGroupMethod (EAnimSyncMethod InMethod)
 
virtual bool SetOverridePositionWhenJoiningSyncGroupAsLeader (bool InOverridePositionWhenJoiningSyncGroupAsLeader)
 
virtual ENGINE_API float GetCachedBlendWeight () const override
 
virtual ENGINE_API void ClearCachedBlendWeight () override
 
virtual ENGINE_API float GetCurrentAssetTimePlayRateAdjusted () const override
 
virtual ENGINE_API const FDeltaTimeRecordGetDeltaTimeRecord () const override
 
- Public Member Functions inherited from FAnimNode_AssetPlayerRelevancyBase
virtual ENGINE_API bool IsLooping () const
 
virtual ENGINE_API bool GetIgnoreForRelevancyTest () const
 
virtual ENGINE_API bool SetIgnoreForRelevancyTest (bool bInIgnoreForRelevancyTest)
 
- Public Member Functions inherited from FAnimNode_Base
virtual ENGINE_API void Evaluate_AnyThread (FPoseContext &Output)
 
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 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

TObjectPtr< UPoseAssetPoseAsset
 

Protected Member Functions

virtual void OnPoseAssetChange ()
 
virtual ANIMGRAPHRUNTIME_API void RebuildPoseList (const FBoneContainer &InBoneContainer, const UPoseAsset *InPoseAsset)
 
ANIMGRAPHRUNTIME_API void CacheBoneBlendWeights (FAnimInstanceProxy *InstanceProxy)
 
- Protected Member Functions inherited from FAnimNode_AssetPlayerBase
ENGINE_API UE::Anim::FAnimSyncParams GetSyncParams (bool bRequestedInertialization) const
 
- 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)
 

Protected Attributes

TWeakObjectPtr< UPoseAssetCurrentPoseAsset
 
FAnimExtractContext PoseExtractContext
 
TArray< floatBoneBlendWeights
 
- Protected Attributes inherited from FAnimNode_AssetPlayerBase
FMarkerTickRecord MarkerTickRecord
 
float BlendWeight = 0.0f
 
float InternalTimeAccumulator = 0.0f
 
FDeltaTimeRecord DeltaTimeRecord
 
bool bHasBeenFullWeight = false
 

Constructor & Destructor Documentation

◆ FAnimNode_PoseHandler()

FAnimNode_PoseHandler::FAnimNode_PoseHandler ( )
inline

Member Function Documentation

◆ CacheBoneBlendWeights()

void FAnimNode_PoseHandler::CacheBoneBlendWeights ( FAnimInstanceProxy InstanceProxy)
protected

Cache bone blend weights - called when pose asset changes

◆ CacheBones_AnyThread()

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

Reimplemented in FAnimNode_PoseBlendNode, and FAnimNode_PoseDriver.

◆ GatherDebugData()

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

Reimplemented in FAnimNode_PoseBlendNode, FAnimNode_PoseByName, and FAnimNode_PoseDriver.

◆ GetAccumulatedTime()

virtual float FAnimNode_PoseHandler::GetAccumulatedTime ( ) const
inlinevirtual

Get the currently referenced time within the asset player node

Reimplemented from FAnimNode_AssetPlayerBase.

◆ GetAnimAsset()

virtual UAnimationAsset * FAnimNode_PoseHandler::GetAnimAsset ( ) const
inlinevirtual

Get the animation asset associated with the node, derived classes should implement this

Reimplemented from FAnimNode_AssetPlayerRelevancyBase.

◆ GetCurrentAssetLength()

virtual float FAnimNode_PoseHandler::GetCurrentAssetLength ( ) const
inlinevirtual

◆ GetCurrentAssetTime()

virtual float FAnimNode_PoseHandler::GetCurrentAssetTime ( ) const
inlinevirtual

◆ Initialize_AnyThread()

void FAnimNode_PoseHandler::Initialize_AnyThread ( const FAnimationInitializeContext Context)
overridevirtual

Initialize function for setup purposes

Reimplemented from FAnimNode_AssetPlayerBase.

Reimplemented in FAnimNode_PoseBlendNode, FAnimNode_PoseByName, and FAnimNode_PoseDriver.

◆ OnPoseAssetChange()

virtual void FAnimNode_PoseHandler::OnPoseAssetChange ( )
inlineprotectedvirtual

Called after CurrentPoseAsset is changed.

◆ RebuildPoseList()

void FAnimNode_PoseHandler::RebuildPoseList ( const FBoneContainer InBoneContainer,
const UPoseAsset InPoseAsset 
)
protectedvirtual

◆ SetAccumulatedTime()

virtual void FAnimNode_PoseHandler::SetAccumulatedTime ( float  NewTime)
inlinevirtual

Override the currently accumulated time

Reimplemented from FAnimNode_AssetPlayerBase.

◆ UpdateAssetPlayer()

void FAnimNode_PoseHandler::UpdateAssetPlayer ( const FAnimationUpdateContext Context)
overridevirtual

Update method for the asset player, to be implemented by derived classes

Reimplemented from FAnimNode_AssetPlayerBase.

Reimplemented in FAnimNode_PoseBlendNode, FAnimNode_PoseByName, and FAnimNode_PoseDriver.

Member Data Documentation

◆ BoneBlendWeights

TArray<float> FAnimNode_PoseHandler::BoneBlendWeights
protected

◆ CurrentPoseAsset

TWeakObjectPtr<UPoseAsset> FAnimNode_PoseHandler::CurrentPoseAsset
protected

◆ PoseAsset

TObjectPtr<UPoseAsset> FAnimNode_PoseHandler::PoseAsset

◆ PoseExtractContext

FAnimExtractContext FAnimNode_PoseHandler::PoseExtractContext
protected

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