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

#include <AnimNode_ScaleChainLength.h>

+ Inheritance diagram for FAnimNode_ScaleChainLength:

Public Member Functions

ANIMGRAPHRUNTIME_API FAnimNode_ScaleChainLength ()
 
virtual ANIMGRAPHRUNTIME_API void Initialize_AnyThread (const FAnimationInitializeContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void Update_AnyThread (const FAnimationUpdateContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void CacheBones_AnyThread (const FAnimationCacheBonesContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void Evaluate_AnyThread (FPoseContext &Output) 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 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

FPoseLink InputPose
 
float DefaultChainLength
 
FBoneReference ChainStartBone
 
FBoneReference ChainEndBone
 
FVector TargetLocation
 
float Alpha
 
float ActualAlpha
 
FInputScaleBias AlphaScaleBias
 
EScaleChainInitialLength ChainInitialLength
 
bool bBoneIndicesCached
 
TArray< FCompactPoseBoneIndexChainBoneIndices
 

Protected Member Functions

ANIMGRAPHRUNTIME_API double GetInitialChainLength (FCompactPose &InLSPose, FCSPose< FCompactPose > &InCSPose) 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)
 

Detailed Description

Scale the length of a chain of bones.

Constructor & Destructor Documentation

◆ FAnimNode_ScaleChainLength()

FAnimNode_ScaleChainLength::FAnimNode_ScaleChainLength ( )

Member Function Documentation

◆ CacheBones_AnyThread()

void FAnimNode_ScaleChainLength::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_ScaleChainLength::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_ScaleChainLength::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.

◆ GetInitialChainLength()

double FAnimNode_ScaleChainLength::GetInitialChainLength ( FCompactPose InLSPose,
FCSPose< FCompactPose > &  InCSPose 
) const
protected

◆ Initialize_AnyThread()

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

◆ Update_AnyThread()

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

◆ ActualAlpha

float FAnimNode_ScaleChainLength::ActualAlpha

◆ Alpha

float FAnimNode_ScaleChainLength::Alpha

◆ AlphaScaleBias

FInputScaleBias FAnimNode_ScaleChainLength::AlphaScaleBias

◆ bBoneIndicesCached

bool FAnimNode_ScaleChainLength::bBoneIndicesCached

◆ ChainBoneIndices

TArray<FCompactPoseBoneIndex> FAnimNode_ScaleChainLength::ChainBoneIndices

◆ ChainEndBone

FBoneReference FAnimNode_ScaleChainLength::ChainEndBone

◆ ChainInitialLength

EScaleChainInitialLength FAnimNode_ScaleChainLength::ChainInitialLength

◆ ChainStartBone

FBoneReference FAnimNode_ScaleChainLength::ChainStartBone

◆ DefaultChainLength

float FAnimNode_ScaleChainLength::DefaultChainLength

Default chain length, as animated.

◆ InputPose

FPoseLink FAnimNode_ScaleChainLength::InputPose

◆ TargetLocation

FVector FAnimNode_ScaleChainLength::TargetLocation

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