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

#include <AnimNode_SkeletalControlBase.h>

+ Inheritance diagram for FAnimNode_SkeletalControlBase:

Public Member Functions

 FAnimNode_SkeletalControlBase ()
 
virtual ~FAnimNode_SkeletalControlBase ()
 
virtual ANIMGRAPHRUNTIME_API void Initialize_AnyThread (const FAnimationInitializeContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void CacheBones_AnyThread (const FAnimationCacheBonesContext &Context) override
 
virtual ANIMGRAPHRUNTIME_API void Update_AnyThread (const FAnimationUpdateContext &Context) final
 
virtual ANIMGRAPHRUNTIME_API void EvaluateComponentSpace_AnyThread (FComponentSpacePoseContext &Output) final
 
virtual int32 GetLODThreshold () const override
 
ANIMGRAPHRUNTIME_API void SetAlpha (float InAlpha)
 
ANIMGRAPHRUNTIME_API float GetAlpha () const
 
ANIMGRAPHRUNTIME_API void InitializeAndValidateBoneRef (FBoneReference &BoneRef, const FBoneContainer &RequiredBones)
 
- Public Member Functions inherited from FAnimNode_Base
virtual ENGINE_API void Evaluate_AnyThread (FPoseContext &Output)
 
virtual void GatherDebugData (FNodeDebugData &DebugData)
 
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

FComponentSpacePoseLink ComponentPose
 
int32 LODThreshold
 
float ActualAlpha
 
EAnimAlphaInputType AlphaInputType
 
bool bAlphaBoolEnabled
 
float Alpha
 
FInputScaleBias AlphaScaleBias
 
FInputAlphaBoolBlend AlphaBoolBlend
 
FName AlphaCurveName
 
FInputScaleBiasClamp AlphaScaleBiasClamp
 

Protected Member Functions

virtual ANIMGRAPHRUNTIME_API void UpdateInternal (const FAnimationUpdateContext &Context)
 
virtual ANIMGRAPHRUNTIME_API void UpdateComponentPose_AnyThread (const FAnimationUpdateContext &Context)
 
virtual ANIMGRAPHRUNTIME_API void EvaluateComponentPose_AnyThread (FComponentSpacePoseContext &Output)
 
virtual ANIMGRAPHRUNTIME_API void EvaluateComponentSpaceInternal (FComponentSpacePoseContext &Context)
 
virtual ANIMGRAPHRUNTIME_API void EvaluateSkeletalControl_AnyThread (FComponentSpacePoseContext &Output, TArray< FBoneTransform > &OutBoneTransforms)
 
virtual bool IsValidToEvaluate (const USkeleton *Skeleton, const FBoneContainer &RequiredBones)
 
virtual void InitializeBoneReferences (const FBoneContainer &RequiredBones)
 
ANIMGRAPHRUNTIME_API void AddDebugNodeData (FString &OutDebugData)
 
- 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 ENGINE_API void OnInitializeAnimInstance (const FAnimInstanceProxy *InProxy, const UAnimInstance *InAnimInstance)
 

Constructor & Destructor Documentation

◆ FAnimNode_SkeletalControlBase()

FAnimNode_SkeletalControlBase::FAnimNode_SkeletalControlBase ( )
inline

◆ ~FAnimNode_SkeletalControlBase()

virtual FAnimNode_SkeletalControlBase::~FAnimNode_SkeletalControlBase ( )
inlinevirtual

Member Function Documentation

◆ AddDebugNodeData()

void FAnimNode_SkeletalControlBase::AddDebugNodeData ( FString &  OutDebugData)
protected

Allow base to add info to the node debug output

◆ CacheBones_AnyThread()

void FAnimNode_SkeletalControlBase::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_SpringBone, and FAnimNode_TwistCorrectiveNode.

◆ EvaluateComponentPose_AnyThread()

void FAnimNode_SkeletalControlBase::EvaluateComponentPose_AnyThread ( FComponentSpacePoseContext Output)
protectedvirtual

Reimplemented in FAnimNode_RigidBody.

◆ EvaluateComponentSpace_AnyThread()

void FAnimNode_SkeletalControlBase::EvaluateComponentSpace_AnyThread ( FComponentSpacePoseContext Output)
finalvirtual

Called to evaluate component-space bone 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.

◆ EvaluateComponentSpaceInternal()

void FAnimNode_SkeletalControlBase::EvaluateComponentSpaceInternal ( FComponentSpacePoseContext Context)
protectedvirtual

◆ EvaluateSkeletalControl_AnyThread()

◆ GetAlpha()

float FAnimNode_SkeletalControlBase::GetAlpha ( ) const

◆ GetLODThreshold()

virtual int32 FAnimNode_SkeletalControlBase::GetLODThreshold ( ) const
inlineoverridevirtual

Get the LOD level at which this node is enabled. Node is enabled if the current LOD is less than or equal to this threshold.

Reimplemented from FAnimNode_Base.

Reimplemented in FAnimNode_AnimDynamics, and FAnimNode_RigidBody.

◆ Initialize_AnyThread()

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

Reimplemented in FAnimNode_AnimDynamics, FAnimNode_Fabrik, FAnimNode_LegIK, FAnimNode_LookAt, FAnimNode_RigidBody, FAnimNode_SpringBone, FAnimNode_Trail, FAnimNode_TwistCorrectiveNode, and FAnimNode_TwoBoneIK.

◆ InitializeAndValidateBoneRef()

void FAnimNode_SkeletalControlBase::InitializeAndValidateBoneRef ( FBoneReference BoneRef,
const FBoneContainer RequiredBones 
)

◆ InitializeBoneReferences()

virtual void FAnimNode_SkeletalControlBase::InitializeBoneReferences ( const FBoneContainer RequiredBones)
inlineprotectedvirtual

◆ IsValidToEvaluate()

◆ SetAlpha()

void FAnimNode_SkeletalControlBase::SetAlpha ( float  InAlpha)

◆ Update_AnyThread()

void FAnimNode_SkeletalControlBase::Update_AnyThread ( const FAnimationUpdateContext Context)
finalvirtual

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.

◆ UpdateComponentPose_AnyThread()

void FAnimNode_SkeletalControlBase::UpdateComponentPose_AnyThread ( const FAnimationUpdateContext Context)
protectedvirtual

Reimplemented in FAnimNode_RigidBody.

◆ UpdateInternal()

void FAnimNode_SkeletalControlBase::UpdateInternal ( const FAnimationUpdateContext Context)
protectedvirtual

Member Data Documentation

◆ ActualAlpha

float FAnimNode_SkeletalControlBase::ActualAlpha

◆ Alpha

float FAnimNode_SkeletalControlBase::Alpha

◆ AlphaBoolBlend

FInputAlphaBoolBlend FAnimNode_SkeletalControlBase::AlphaBoolBlend

◆ AlphaCurveName

FName FAnimNode_SkeletalControlBase::AlphaCurveName

◆ AlphaInputType

EAnimAlphaInputType FAnimNode_SkeletalControlBase::AlphaInputType

◆ AlphaScaleBias

FInputScaleBias FAnimNode_SkeletalControlBase::AlphaScaleBias

◆ AlphaScaleBiasClamp

FInputScaleBiasClamp FAnimNode_SkeletalControlBase::AlphaScaleBiasClamp

◆ bAlphaBoolEnabled

bool FAnimNode_SkeletalControlBase::bAlphaBoolEnabled

◆ ComponentPose

FComponentSpacePoseLink FAnimNode_SkeletalControlBase::ComponentPose

◆ LODThreshold

int32 FAnimNode_SkeletalControlBase::LODThreshold

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