code: void GetStateMachineIndexAndDescription ( [FName](API\Runtime\Core\UObject\FName) InMachineName, int32 & OutMachineIndex, const [FBakedAnimationStateMachine](API\Runtime\Engine\Animation\FBakedAnimationStateMachine) ** OutMachineDescription ) const


description: Gets the index of the state machine matching MachineName

module: Engine

code: int32 GetStateMachineIndex ( [FName](API\Runtime\Core\UObject\FName) MachineName ) const


description: Gets the index of the state machine

code: int32 GetStateMachineIndex ( [FAnimNode_StateMachine](API\Runtime\Engine\Animation\FAnimNode_StateMachine) * StateMachine ) const


description: Gets the runtime instance of the specified state machine

code: const [FAnimNode_StateMachine](API\Runtime\Engine\Animation\FAnimNode_StateMachine) * GetStateMachineInstance ( int32 MachineIndex ) const


description: Gets the runtime instance of the specified state machine by Name

code: const [FAnimNode_StateMachine](API\Runtime\Engine\Animation\FAnimNode_StateMachine) * GetStateMachineInstanceFromName ( [FName](API\Runtime\Core\UObject\FName) MachineName ) const


description: Gets the runtime instance desc of the state machine specified by name

code: const [FBakedAnimationStateMachine](API\Runtime\Engine\Animation\FBakedAnimationStateMachine) * GetStateMachineInstanceDesc ( [FName](API\Runtime\Core\UObject\FName) MachineName ) const


description: Returns the baked sync group index from the compile step

code: int32 GetSyncGroupIndexFromName ( [FName](API\Runtime\Core\UObject\FName) SyncGroupName ) const


code: [FMarkerSyncAnimPosition](API\Runtime\Engine\Animation\FMarkerSyncAnimPosition) GetSyncGroupPosition ( [FName](API\Runtime\Core\UObject\FName) InSyncGroupName ) const


description: Get the sync group we are currently reading from

code: const [FSyncGroupMap](API\Runtime\Engine\Animation\FAnimInstanceProxy\FSyncGroupMap) & GetSyncGroupMapRead() const


description: Deprecated* Sync groups are no longer stored in arrays, please use GetSyncGroupMapRead.

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FAnimGroupInstance](API\Runtime\Engine\Animation\FAnimGroupInstance) > & GetSyncGroupRead() const


description: Deprecated* Function renamed to GetBufferReadIndex as this no longer deals with sync groups.

code: int32 GetSyncGroupReadIndex() const


description: Deprecated* Function renamed to GetBufferWriteIndex as this no longer deals with sync groups.

code: int32 GetSyncGroupWriteIndex() const


code: bool GetTimeToClosestMarker ( [FName](API\Runtime\Core\UObject\FName) SyncGroup, [FName](API\Runtime\Core\UObject\FName) MarkerName, float & OutMarkerTime ) const


description: Get the last time dilation, gleaned from world settings

code: float GetTimeDilation() const


description: Get the ungrouped active player we are currently reading from

code: const [TArray](API\Runtime\Core\Containers\TArray)< [FAnimTickRecord](API\Runtime\Engine\Animation\FAnimTickRecord) > & GetUngroupedActivePlayersRead()


code: const [FGraphTraversalCounter](API\Runtime\Engine\Animation\FGraphTraversalCounter) & GetUpdateCounter() const


description: Check whether we have any active curves

code: bool HasActiveCurves() const


code: bool HasMarkerBeenHitThisFrame ( [FName](API\Runtime\Core\UObject\FName) SyncGroup, [FName](API\Runtime\Core\UObject\FName) MarkerName ) const


description: Check for whether a native entry delegate is bound to the specified state.

code: bool HasNativeStateEntryBinding ( const [FName](API\Runtime\Core\UObject\FName) & MachineName, const [FName](API\Runtime\Core\UObject\FName) & StateName, [FName](API\Runtime\Core\UObject\FName) & OutBindingName )


description: Check for whether a native exit delegate is bound to the specified state.

code: bool HasNativeStateExitBinding ( const [FName](API\Runtime\Core\UObject\FName) & MachineName, const [FName](API\Runtime\Core\UObject\FName) & StateName, [FName](API\Runtime\Core\UObject\FName) & OutBindingName )


description: Check for whether a native rule is bound to the specified transition.

code: bool HasNativeTransitionBinding ( const [FName](API\Runtime\Core\UObject\FName) & MachineName, const [FName](API\Runtime\Core\UObject\FName) & PrevStateName, const [FName](API\Runtime\Core\UObject\FName) & NextStateName, [FName](API\Runtime\Core\UObject\FName) & OutBindingName )


description: Check whether we have a valid root node

code: bool HasRootNode() const


description: Called when our anim instance is being initialized

code: virtual void Initialize ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Custom proxy Init/Cache/Update/Evaluate functions

code: static void InitializeInputProxy ( [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InputProxy, [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Copy any UObjects we might be using. Called Pre-update and pre-evaluate.

code: virtual void InitializeObjects ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Initialize the root node - split into a separate function for backwards compatibility (initialization order) reasons

code: void InitializeRootNode ( bool bInDeferRootNodeInitialization )


description: Initialize the specified root node

code: void InitializeRootNode_WithRoot ( [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InRootNode )


description: Whether theUAnimInstancethis context refers to is currently being debugged in the editor

code: bool IsBeingDebugged() const


description: Deprecated* Skeleton compatibility is now an editor-only concern, this function is no longer used.

code: bool IsSkeletonCompatible ( [USkeleton](API\Runtime\Engine\Animation\USkeleton) const * InSkeleton ) const


code: bool IsSlotNodeRelevantForNotifies ( const [FName](API\Runtime\Core\UObject\FName) & SlotNodeName ) const


code: bool IsSyncGroupBetweenMarkers ( [FName](API\Runtime\Core\UObject\FName) InSyncGroupName, [FName](API\Runtime\Core\UObject\FName) PreviousMarker, [FName](API\Runtime\Core\UObject\FName) NextMarker, bool bRespectMarkerOrder ) const


description: Returns true if SyncGroupName is valid (exists, and if is based on markers, has valid markers)

code: bool IsSyncGroupValid ( [FName](API\Runtime\Core\UObject\FName) InSyncGroupName ) const


description: Allow nodes to register log messages to be processed on the game thread

code: void LogMessage ( [FName](API\Runtime\Core\UObject\FName) InLogType, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FTokenizedMessage](API\Runtime\Core\Logging\FTokenizedMessage) > & InMessage ) const


code: void LogMessage ( [FName](API\Runtime\Core\UObject\FName) InLogType, [EMessageSeverity::Type](API\Runtime\Core\Logging\EMessageSeverity__Type) InSeverity, const [FText](API\Runtime\Core\Internationalization\FText) & InMessage ) const


description: Deprecated* Please use theFAnimTickRecordconstructor that takes aUBlendSpace

code: void MakeBlendSpaceTickRecord ( [FAnimTickRecord](API\Runtime\Engine\Animation\FAnimTickRecord) & TickRecord, [UBlendSpace](API\Runtime\Engine\Animation\UBlendSpace) * BlendSpace, const FVector & BlendInput, [TArray](API\Runtime\Core\Containers\TArray)< [FBlendSampleData](API\Runtime\Engine\Animation\FBlendSampleData) > & BlendSampleDataCache, [FBlendFilter](API\Runtime\Engine\Animation\FBlendFilter) & BlendFilter, bool bLooping, float PlayRate, float FinalBlendWeight, float & CurrentTime, [FMarkerTickRecord](API\Runtime\Engine\Animation\FMarkerTickRecord) & MarkerTickRecord ) const


description: Deprecated* Please use theFAnimTickRecordconstructor that takes aUPoseAsset

code: void MakePoseAssetTickRecord ( [FAnimTickRecord](API\Runtime\Engine\Animation\FAnimTickRecord) & TickRecord, class [UPoseAsset](API\Runtime\Engine\Animation\UPoseAsset) * PoseAsset, float FinalBlendWeight ) const


description: Deprecated* Please use theFAnimTickRecordconstructor that takes aUAnimSequenceBase

code: void MakeSequenceTickRecord ( [FAnimTickRecord](API\Runtime\Engine\Animation\FAnimTickRecord) & TickRecord, [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * Sequence, bool bLooping, float PlayRate, float FinalBlendWeight, float & CurrentTime, [FMarkerTickRecord](API\Runtime\Engine\Animation\FMarkerTickRecord) & MarkerTickRecord ) const


description: Called during PreUpdate, if SkelMesh LOD has changed since last update

code: void OnPreUpdateLODChanged ( const int32 PreviousLODIndex, const int32 NewLODIndex )


code: [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) & operator= ( [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) && )


code: [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) & operator= ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) & )


description: Called after evaluate so we can do any game thread work we need to

code: virtual void PostEvaluate ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Called after update so we can copy any data we need

code: virtual void PostUpdate ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance ) const


description: Called on the game thread pre-evaluate.

code: virtual void PreEvaluateAnimation ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Called before update so we can copy any data we need

code: virtual void PreUpdate ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance, float DeltaSeconds )


description: Behaves like QueryTransitionEvent but additionally marks the event for consumption

code: bool QueryAndMarkTransitionEvent ( int32 MachineIndex, int32 TransitionIndex, const [FName](API\Runtime\Core\UObject\FName) & EventName )


description: Returns whether or not the given event transition request has been queued

code: bool QueryTransitionEvent ( int32 MachineIndex, int32 TransitionIndex, const [FName](API\Runtime\Core\UObject\FName) & EventName ) const


description: Recalculate Required Bones [RequiredBones] Is called when bRequiredBonesUpToDate = false The provided asset must be a SkeletalMesh or a Skeleton.

code: void RecalcRequiredBones ( [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * Component, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Asset )


description: Recalculate required curve list for animation - if you call RecalcRequiredBones, this should already happen

code: void RecalcRequiredCurves ( const [UE::Anim::FCurveFilterSettings](API\Runtime\Engine\FCurveFilterSettings) & CurveFilterSettings )


description: Deprecated* Please use RecalcRequiredCurves that takes aFCurveEvaluationOption.

code: void RecalcRequiredCurves ( const [FCurveEvaluationOption](API\Runtime\Engine\FCurveEvaluationOption) & CurveEvalOption )


code: void RecordMachineWeight ( const int32 InMachineClassIndex, const float InMachineWeight )


description: Record a node attribute in the debugger

code: void RecordNodeAttribute ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) & InSourceProxy, int32 InTargetNodeIndex, int32 InSourceNodeIndex, [FName](API\Runtime\Core\UObject\FName) InAttribute )


description: Record a visited node in the debugger

code: void RecordNodeVisit ( int32 TargetNodeIndex, int32 SourceNodeIndex, float BlendWeight )


description: Record a node sync in the debugger

code: void RecordNodeSync ( int32 InSourceNodeIndex, [FName](API\Runtime\Core\UObject\FName) InSyncGroup )


code: void RecordStateWeight ( const int32 InMachineClassIndex, const int32 InStateIndex, const float InStateWeight, const float InElapsedTime )


description: Register a named slot

code: void RegisterSlotNodeWithAnimInstance ( const [FName](API\Runtime\Core\UObject\FName) & SlotNodeName )


description: Deprecated* Please use RegisterWatchedPose that takes a pose and a curve

code: void RegisterWatchedPose ( const [FCompactPose](API\Runtime\Engine\FCompactPose) & Pose, int32 LinkID )


code: void RegisterWatchedPose ( const [FCSPose](API\Runtime\Engine\FCSPose)< [FCompactPose](API\Runtime\Engine\FCompactPose) > & Pose, int32 LinkID )


description: Record pose for node of ID LinkID if it is currently being watched.

code: void RegisterWatchedPose ( const [FCompactPose](API\Runtime\Engine\FCompactPose) & Pose, const [FBlendedCurve](API\Runtime\Engine\Animation\FBlendedCurve) & InCurve, int32 LinkID )


code: void RegisterWatchedPose ( const [FCSPose](API\Runtime\Engine\FCSPose)< [FCompactPose](API\Runtime\Engine\FCompactPose) > & Pose, const [FBlendedCurve](API\Runtime\Engine\Animation\FBlendedCurve) & InCurve, int32 LinkID )


description: Slot node run-time functions

code: void ReinitializeSlotNodes()


description: Remove a previously saved pose snapshot from the internal snapshot cache

code: void RemovePoseSnapshot ( [FName](API\Runtime\Core\UObject\FName) SnapshotName )


description: Attempts to queue a transition request, returns true if successful

code: bool RequestTransitionEvent ( const [FName](API\Runtime\Core\UObject\FName) & EventName, const double RequestTimeout, const ETransitionRequestQueueMode & QueueMode, const ETransitionRequestOverwriteMode & OverwriteMode )


description: Reset Animation Curves

code: void ResetAnimationCurves()


code: static void ResetCounterInputProxy ( [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InputProxy )


description: Deprecated* Please use ResetDynamics with a ETeleportType argument

code: void ResetDynamics()


description: Reset any dynamics running simulation-style updates (e.g. on teleport, time skip etc.)

code: void ResetDynamics ( ETeleportType InTeleportType )


description: Reset the sync system to its starting state

code: void ResetSync()


description: Save a pose snapshot to the internal snapshot cache

code: void SavePoseSnapshot ( [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * InSkeletalMeshComponent, [FName](API\Runtime\Core\UObject\FName) SnapshotName )


code: void SequenceAdvanceImmediate ( [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * Sequence, bool bLooping, float PlayRate, float DeltaSeconds, float & CurrentTime, [FMarkerTickRecord](API\Runtime\Engine\Animation\FMarkerTickRecord) & MarkerTickRecord )


description: Set the mirror data table to sync animations.

code: void SetSyncMirror ( const [UMirrorDataTable](API\Runtime\Engine\Animation\UMirrorDataTable) * MirrorDataTable )


description: Check whether we should extract root motion

code: bool ShouldExtractRootMotion() const


code: void SlotEvaluatePose ( const [FName](API\Runtime\Core\UObject\FName) & SlotNodeName, const [FAnimationPoseData](API\Runtime\Engine\Animation\FAnimationPoseData) & SourceAnimationPoseData, float InSourceWeight, [FAnimationPoseData](API\Runtime\Engine\Animation\FAnimationPoseData) & OutBlendedAnimationPoseData, float InBlendWeight, float InTotalNodeWeight )


description: Evaluate a pose for a named montage slot

code: void SlotEvaluatePose ( const [FName](API\Runtime\Core\UObject\FName) & SlotNodeName, const [FCompactPose](API\Runtime\Engine\FCompactPose) & SourcePose, const [FBlendedCurve](API\Runtime\Engine\Animation\FBlendedCurve) & SourceCurve, float InSourceWeight, [FCompactPose](API\Runtime\Engine\FCompactPose) & BlendedPose, [FBlendedCurve](API\Runtime\Engine\Animation\FBlendedCurve) & BlendedCurve, float InBlendWeight, float InTotalNodeWeight )


description: Deprecated* Do not call directly. Instead sync and asset player ticking is controlled via UE::Anim::FSync and UE::Anim::FSyncScope.

code: void TickAssetPlayerInstances()


code: void TickAssetPlayerInstances ( float DeltaSeconds )


description: Deprecated* Function renamed to FlipBufferWriteIndex as this no longer deals with sync groups.

code: void TickSyncGroupWriteIndex()


description: Called when our anim instance is being uninitialized

code: virtual void Uninitialize ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Trigger any anim notifies

code: void TriggerAnimNotifies ( [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkelMeshComp, float DeltaSeconds )


description: Let us copy the full notify queue from the last frame

code: void UpdateActiveAnimNotifiesSinceLastTick ( const [FAnimNotifyQueue](API\Runtime\Engine\Animation\FAnimNotifyQueue) & AnimInstanceQueue )


description: Updates the anim graph

code: virtual void UpdateAnimationNode ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & InContext )


description: CallsUpdate(), updates the anim graph, ticks asset players

code: void UpdateAnimation()


description: Updates the anim graph using a specified root node

code: virtual void UpdateAnimationNode_WithRoot ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & InContext, [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InRootNode, [FName](API\Runtime\Core\UObject\FName) InLayerName )


description: CallsUpdate(), updates the anim graph from the specified root, ticks asset players

code: void UpdateAnimation_WithRoot ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & InContext, [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InRootNode, [FName](API\Runtime\Core\UObject\FName) InLayerName )


description: Update curves once evaluation has taken place. Mostly pushes curves to materials/morphs

code: void UpdateCurvesPostEvaluation ( [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkelMeshComp )


description: Deprecated* This function is no longer used.

code: void UpdateCurvesToComponents ( [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * Component )


description: Pushes blended heap curve to output curves in the proxy using required bones cached data

code: void UpdateCurvesToEvaluationContext ( const [FAnimationEvaluationContext](API\Runtime\Engine\Components\FAnimationEvaluationContext) & InContext )


code: static void UpdateInputProxy ( [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InputProxy, const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


description: Update override point

code: virtual void Update ( float DeltaSeconds )


description: Allow slot nodes to store off their weight during ticking.

code: void UpdateSlotNodeWeight ( const [FName](API\Runtime\Core\UObject\FName) & SlotNodeName, float InLocalMontageWeight, float InNodeGlobalWeight )


description: Get whether the most relevant animation triggered the given notify last tick.

code: bool WasAnimNotifyNameTriggeredInSourceState ( int32 MachineIndex, int32 StateIndex, [FName](API\Runtime\Core\UObject\FName) NotifyName ) const


description: Get whether the animation notify with the specified name triggered last tick.

code: bool WasAnimNotifyNameTriggeredInAnyState ( [FName](API\Runtime\Core\UObject\FName) NotifyName ) const


description: Get whether the given state machine triggered the animation notify with the specified name last tick.

code: bool WasAnimNotifyNameTriggeredInStateMachine ( int32 MachineIndex, [FName](API\Runtime\Core\UObject\FName) NotifyName )


description: Get whether a particular notify state was active in any state machine last tick.

code: bool WasAnimNotifyStateActiveInAnyState ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimNotifyState](API\Runtime\Engine\Animation\AnimNotifies\UAnimNotifyState) > AnimNotifyStateType ) const


description: Get whether a particular notify state is active in a specific state machine last tick.

code: bool WasAnimNotifyStateActiveInStateMachine ( int32 MachineIndex, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimNotifyState](API\Runtime\Engine\Animation\AnimNotifies\UAnimNotifyState) > AnimNotifyStateType ) const


description: Get whether the most relevant animation was in a particular notify state last tick.

code: bool WasAnimNotifyStateActiveInSourceState ( int32 MachineIndex, int32 StateIndex, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimNotifyState](API\Runtime\Engine\Animation\AnimNotifies\UAnimNotifyState) > AnimNotifyStateType ) const


code: bool WasAnimNotifyTriggeredInSourceState ( int32 MachineIndex, int32 StateIndex, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimNotify](API\Runtime\Engine\Animation\AnimNotifies\UAnimNotify) > AnimNotifyType ) const


description: Get whether a particular notify type was active in a specific state machine last tick.

code: bool WasAnimNotifyTriggeredInStateMachine ( int32 MachineIndex, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimNotify](API\Runtime\Engine\Animation\AnimNotifies\UAnimNotify) > AnimNotifyType ) const


description: Get whether an animation notify of a given type was triggered last tick.

code: bool WasAnimNotifyTriggeredInAnyState ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimNotify](API\Runtime\Engine\Animation\AnimNotifies\UAnimNotify) > AnimNotifyType ) const


code: FAnimInstanceProxy ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * Instance )


code: FAnimInstanceProxy ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) & )


className: FAnimInstanceProxy

description: Proxy object passed around during animation tree update in lieu of aUAnimInstance

code: struct FAnimInstanceProxy

ActiveAnimNotifiesSinceLastTick

type: TArray<FAnimNo...

description: Animation Notifies that has been triggered since the last tick. These can be safely consumed at any point.

bBoneCachesInvalidated

type: uint8:  1

description: When RequiredBones mapping has changed, AnimNodes need to update their bones caches.

CachedBonesCounter

type: FGraphTraversal...

FrameCounterForUpdate

description: Sync counter.

InitializationCounter

description: Counters for synchronization.

QueuedDrawDebugItems

type: TArray<FQueued...


description: Returns the FPS for the given length and number of keys.

code: float KeysPerSecond() const


code: FAnimKeyHelper ( float InLength, int32 InNumKeys )


className: FAnimKeyHelper

description: Animation Key extraction helper as we have a lot of code that messes up the key length

code: struct FAnimKeyHelper


description: Changes the way this element is linked to its segment

code: void ChangeLinkMethod ( [EAnimLinkMethod::Type](API\Runtime\Engine\Animation\EAnimLinkMethod__Type) NewLinkMethod )


description: Change the montage slot that this element is linked to

code: void ChangeSlotIndex ( int32 NewSlotIndex )


description: Relinks this element if internal state requires relinking

code: bool ConditionalRelink()


description: Clear the linking information from this element, leaves montage link intact

code: void Clear()


description: Gets the Montage this element is linked to, if any

code: const [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * GetLinkedMontage() const


description: Gets the sequence this element is linked to

code: const [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * GetLinkedSequence() const


description: Gets the segment in the current montage in the current slot that is at the time of this element


description: Get the method used to link this element to its segment


description: Get the index of the segment this element is currently linked to

code: int32 GetSegmentIndex() const


description: Get the slot index this element is currently linked to

code: int32 GetSlotIndex() const


description: Gets the current time for this element

code: float GetTime ( [EAnimLinkMethod::Type](API\Runtime\Engine\Animation\EAnimLinkMethod__Type) ReferenceFrame ) const


description: Link this element to a montage

code: void LinkMontage ( [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * Montage, float AbsMontageTime, int32 InSlotIndex )


description: Link this element to an animation object (Sequence or Montage)

code: void Link ( [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * AnimSequenceBase, float AbsTime, int32 InSlotIndex )


description: Link this element to a Sequence, Just setting basic data as sequences don't need full linking

code: void LinkSequence ( [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * Sequence, float AbsSequenceTime )


description: Called when the properties of this element are changed

code: void OnChanged ( float NewMontageTime )


description: Refreshes the current segment data (Begin time, length etc.) and validate the link time Intended to update the internal state when segment lengths/times could have changed

code: void RefreshSegmentOnLoad()


description: Directly sets segment index

code: void SetSegmentIndex ( int32 NewSegmentIndex )


description: Sets the time of this element

code: virtual void SetTime ( float NewTime, [EAnimLinkMethod::Type](API\Runtime\Engine\Animation\EAnimLinkMethod__Type) ReferenceFrame )


description: Update the timing information for this element. Will not search for a new segment unless this element does not have one

code: void Update()


className: FAnimLinkableElement

description: FAnimNotifyEvent

code: struct FAnimLinkableElement

CachedLinkMethod

type: TEnumAsByte<EA...

description: Cached link method used to transform the time when LinkMethod changes, always relates to the currently stored time

LinkedMontage

type: TObjectPtr<UAn...

description: The montage that this element is currently linked to

LinkedSequence

description: The Animation Sequence that this montage element will link to, when the sequence changes in either length or rate; the element will correctly place itself in relation to the sequence

LinkMethod

description: The method we are using to calculate our times

LinkValue

type: float

description: The time of this montage.

SegmentBeginTime

description: The absolute time in the montage that our currently linked segment begins

SegmentIndex

description: The index of the segment we are linked to within the slot we are using

SegmentLength

description: The absolute length of our currently linked segment

SlotIndex

description: The slot index we are currently using within LinkedMontage


description: Reference has to be managed manually

code: void AddReferencedObjects ( [FReferenceCollector](API\Runtime\CoreUObject\UObject\FReferenceCollector) & Collector )


description: Simulate is same as Advance, but without calling any events or touching any of the instance data. So it performs a simulation of advancing the timeline.

code: void Advance ( float DeltaTime, struct [FRootMotionMovementParams](API\Runtime\Engine\Animation\FRootMotionMovementParams) * OutRootMotionParams, bool bBlendRootMotion )


description: Return true if it can use marker sync

code: bool CanUseMarkerSync() const


code: const [UBlendProfile](API\Runtime\Engine\Animation\UBlendProfile) * GetActiveBlendProfile() const


code: const EBlendProfileMode GetActiveBlendProfileMode() const


description: Get the current blend info.

code: const [FAlphaBlend](API\Runtime\Engine\FAlphaBlend) & GetBlend() const


description: Getters

code: int32 GetInstanceID() const


code: const [FAnimMontageInstance](API\Runtime\Engine\Animation\FAnimMontageInstance) * GetMontageSyncLeader() const


code: int32 GetNextSectionID ( int32 const & CurrentSectionID ) const


code: [FName](API\Runtime\Core\UObject\FName) GetSectionNameFromID ( int32 const & SectionID ) const


description: Deprecated* Please use GetSyncGroupName

code: int32 GetSyncGroupIndex() const


description: Get Weight

code: float GetWeight() const


code: void Initialize ( class [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * InMontage )


description: Returns true if this montage is active (valid and not blending out)

code: bool IsActive() const


code: bool JumpToSectionName ( [FName](API\Runtime\Core\UObject\FName) const & SectionName, bool bEndOfSection )


description: Delegate function handlers

code: void HandleEvents ( float PreviousTrackPos, float CurrentTrackPos, const [FBranchingPointMarker](API\Runtime\Engine\Animation\FBranchingPointMarker) * BranchingPointMarker )


description: PostUpdate - Sync if updated after Leader.

code: void MontageSync_PostUpdate()


description: A montage can only have a single leader. A leader can have multiple followers. Loops cause no harm. If Follower gets ticked before Leader, then synchronization will be performed with a frame of lag. Essentially correcting the previous frame. Which is enough for simple cases (i.e. no timeline jumps from notifies). If Follower gets ticked after Leader, then synchronization will be exact and support more complex cases (i.e. timeline jumps). This can be enforced by setting up tick pre-requisites if desired.

code: void MontageSync_Follow ( struct [FAnimMontageInstance](API\Runtime\Engine\Animation\FAnimMontageInstance) * NewLeaderMontageInstance )


description: PreUpdate - Sync if updated before Leader.

code: void MontageSync_PreUpdate()


description: Stop following our leader

code: void MontageSync_StopFollowing()


description: Stop leading, release all followers.

code: void MontageSync_StopLeading()


description: Blend in with the supplied play rate. Other blend settings will come from the Montage asset.

code: void Play ( float InPlayRate )


description: Blend in with the supplied blend settings.

code: void Play ( float InPlayRate, const [FMontageBlendSettings](API\Runtime\Engine\Animation\FMontageBlendSettings) & BlendInSettings )


code: static [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * PreviewSequencerMontagePosition ( [FName](API\Runtime\Core\UObject\FName) SlotName, [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkeletalMeshComponent, int32 & InOutInstanceId, [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InAnimSequence, float InFromPosition, float InToPosition, float Weight, bool bLooping, bool bFireNotifies, bool bPlaying )


description: Disable RootMotion.

code: void PushDisableRootMotion()


code: static [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * PreviewSequencerMontagePosition ( [FName](API\Runtime\Core\UObject\FName) SlotName, [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkeletalMeshComponent, [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * AnimInstance, int32 & InOutInstanceId, [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InAnimSequence, float InFromPosition, float InToPosition, float Weight, bool bLooping, bool bFireNotifies, bool bPlaying )


description: Set the Desired Weight

code: void SetDesiredWeight ( float InValue )


description: Set the next position of this animation for the next animation update tick. Will trigger events and notifies since last position.

code: void SetNextPositionWithEvents ( float InPosition )


description: Set the evaluation range of this animation for the next animation update tick. Will trigger events and notifies for that range.

code: void SetNextPositionWithEvents ( float InFromPosition, float InToPosition )


code: bool SetNextSectionID ( int32 const & SectionID, int32 const & NewNextSectionID )


code: bool SetNextSectionName ( [FName](API\Runtime\Core\UObject\FName) const & SectionName, [FName](API\Runtime\Core\UObject\FName) const & NewNextSectionName )


code: void SetPlaying ( bool bInPlaying )


code: void SetPlayRate ( float const & InPlayRate )


description: Setters

code: void SetPosition ( float const & InPosition )


description: Static functions that are used by sequencer montage support

code: static [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * SetSequencerMontagePosition ( [FName](API\Runtime\Core\UObject\FName) SlotName, [USkeletalMeshComponent](API\Runtime\Engine\Components\USkeletalMeshComponent) * SkeletalMeshComponent, int32 & InOutInstanceId, [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InAnimSequence, float InFromPosition, float InToPosition, float Weight, bool bLooping, bool bPlaying )


code: static [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * SetSequencerMontagePosition ( [FName](API\Runtime\Core\UObject\FName) SlotName, [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * AnimInstance, int32 & InOutInstanceId, [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InAnimSequence, float InFromPosition, float InToPosition, float Weight, bool bLooping, bool bPlaying )


description: Set the weight

code: void SetWeight ( float InValue )


code: bool SimulateAdvance ( float DeltaTime, float & InOutPosition, struct [FRootMotionMovementParams](API\Runtime\Engine\Animation\FRootMotionMovementParams) & OutRootMotionParams ) const


description: Blend out with the suppliedFAlphaBlend. Other blend settings will come from the Montage asset.

code: void Stop ( const [FAlphaBlend](API\Runtime\Engine\FAlphaBlend) & InBlendOut, bool bInterrupt )


description: Blend out with the supplied blend settings.

code: void Stop ( const [FMontageBlendSettings](API\Runtime\Engine\Animation\FMontageBlendSettings) & InBlendOutSettings, bool bInterrupt )


description: second is normal tick. This tick has to happen later when all node ticks to accumulate and update curve data/notifies/branching points

code: void UpdateWeight ( float DeltaTime )


code: FAnimMontageInstance ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


className: FAnimMontageInstance

code: struct FAnimMontageInstance

bDidUseMarkerSyncThisTick

type: bool

description: Whether this in this tick's call to Advance we used marker based sync.

bEnableAutoBlendOut

description: Enable auto blend out. This is instance set up. You can override

DefaultBlendTimeMultiplier

description: Blend Time multiplier to allow extending and narrowing blendtimes.

DeltaTimeRecord

type: FDeltaTimeRecor...

description: Transient value of time position and delta in the last frame known

MarkersPassedThisTick

type: TArray<FPassed...

description: Markers that passed in this tick

MarkerTickRecord

type: FMarkerTickReco...

description: Marker tick record

Montage

type: TObjectPtr< cla...

description: Montage reference.

OnMontageBlendingOutStarted

type: FOnMontageBlend...

OnMontageEnded

type: FOnMontageEnded

description: Delegates


description: Per-tick update.

code: template<typename AnimNodeType> static bool Update ( AnimNodeType & InAnimNode, const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & InContext )


className: FAnimNodeAlphaOptions

description: Alpha blending options helper functions for anim nodes Assumes that the specified node contains the members: AlphaInputType, ActualAlpha, AlphaScaleBias, Alpha, bAlphaBoolEnabled, AlphaCurveName

code: struct FAnimNodeAlphaOptions


description: The class we are part of

code: const [IAnimClassInterface](API\Runtime\Engine\Animation\IAnimClassInterface) & GetAnimClassInterface() const


description: Get the node index for this constant data block.

code: int32 GetNodeIndex() const


className: FAnimNodeConstantData

description: Any constant class data an anim node uses should be derived from this type.

code: struct FAnimNodeConstantData


description:
Get the specified data for the specified instance. The data may or may not reside on an anim instance itself as it may have been folded into constants.
the raw data value, either held on sparse class data or on the instance

code: const void * GetData ( [UE::Anim::FNodeDataId](API\Runtime\Engine\Animation\FNodeDataId) InId, const [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InNode, const [UObject](API\Runtime\CoreUObject\UObject\UObject) * InCurrentObject ) const


description: Get the specified mutable data for the specified instance. If the data is not held on the instance this will return nullptr.

code: void * GetInstanceData ( [UE::Anim::FNodeDataId](API\Runtime\Engine\Animation\FNodeDataId) InId, [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InNode, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InCurrentObject ) const


description: Get the specified mutable data for the specified instance. The data may or may not reside on an anim instance itself as it may have been folded into constants. Only available in editor to support patching constant data during compilation. Not for use at runtime.

code: void * GetMutableData ( [UE::Anim::FNodeDataId](API\Runtime\Engine\Animation\FNodeDataId) InId, [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * InNode, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InCurrentObject ) const


description: Check whether the node has the specified flags

code: bool HasNodeAnyFlags ( EAnimNodeDataFlags InFlags ) const


className: FAnimNodeData

description: Any constant/folded class data an anim node can be accessed via this struct.

code: struct FAnimNodeData


description: Call the function.

code: void Call ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObject, void * InParameters ) const


description: Get the function we reference.

code: [UFunction](API\Runtime\CoreUObject\UObject\UFunction) * GetFunction() const


description: Get the function name.


description: Cache the function ptr from the name.

code: void Initialize ( const [UClass](API\Runtime\CoreUObject\UObject\UClass) * InClass )


description: Check if we reference a valid function.

code: bool IsValid() const


description: Override operator== as we only need to compare class/function names.

code: bool operator== ( const [FAnimNodeFunctionRef](API\Runtime\Engine\Animation\FAnimNodeFunctionRef) & InOther ) const


description: Set the function via name.

code: void SetFromFunctionName ( [FName](API\Runtime\Core\UObject\FName) InName )


description: Set the function via a function.

code: void SetFromFunction ( [UFunction](API\Runtime\CoreUObject\UObject\UFunction) * InFunction )


className: FAnimNodeFunctionRef

description: Cached function name/ptr that is resolved at init time

code: struct FAnimNodeFunctionRef


description: Call a function if this context is valid.

code: template<typename NodeType> void CallAnimNodeFunction ( const TCHAR * InFunctionNameForErrorReporting, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(NodeType &)> InFunction ) const


description: Convert to a derived type.

code: template<typename OtherContextType> static OtherContextType ConvertToType ( const [FAnimNodeReference](API\Runtime\Engine\Animation\FAnimNodeReference) & InReference, EAnimNodeReferenceConversionResult & OutResult )


description: Get the node we wrap. If the reference is invalid or node is not of the specified type then this will return assert.

code: template<typename NodeType> NodeType & GetAnimNode() const


description: Get the node we wrap. If the context is invalid or the node is not of the specified type then this will return nullptr.

code: template<typename NodeType> NodeType * GetAnimNodePtr() const


code: FAnimNodeReference ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance, [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) & InNode )


code: FAnimNodeReference ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance, int32 InIndex )


className: FAnimNodeReference

description: A reference to an anim node. Does not persist, only valid for the call in which it was retrieved.

code: struct FAnimNodeReference


description: Get the current weight.

code: float GetCurrentWeight() const


description: Get the previous weight.

code: float GetPreviousWeight() const


description: Node has full weight and had full weight last update.

code: bool HasFullyBlendedIn() const


description: Node has zero weight.

code: bool HasFullyBlendedOut() const


description: Node has just become relevant.

code: bool HasJustBecomeRelevant() const


description: Node has full weight and had non-full weight last update.

code: bool IsFinishingBlendingIn() const


description: Node has zero weight and had non-zero weight last update.

code: bool IsFinishingBlendingOut() const


description: Node has weight and had zero weight last update.

code: bool IsStartingBlendingIn() const


description: Node has non-full weight and had full weight last update.

code: bool IsStartingBlendingOut() const


className: FAnimNodeRelevancyStatus

description: Relevancy status of a animation node tracked by this subsystem.

code: struct FAnimNodeRelevancyStatus


description: Verifies the layout of another struct data against this one Note: uses name + index, so not robust to type/size changes. This is OK however as tagged property serializaton will deal with those and names/indices are all we need to be consistent at this level (as we inderect by name/index)

code: bool DoesLayoutMatch ( const [FAnimNodeStructData](API\Runtime\Engine\Animation\FAnimNodeStructData) & InOther ) const


code: int32 GetPropertyIndex ( [FName](API\Runtime\Core\UObject\FName) InPropertyName ) const


code: FAnimNodeStructData ( const [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InNodeType )


className: FAnimNodeStructData

description: Data about editor-side struct property indices. Used to map property name to editor-only property indices. This allows us to avoidTMaplookups at runtime.

code: struct FAnimNodeStructData


code: void CopyTopsOnly ( const [FAnimNodeTracker](API\Runtime\Engine\Animation\FAnimNodeTracker) & Source )


className: FMap

code: typedef [TMap](API\Runtime\Core\Containers\TMap)< [FKey](API\Runtime\Engine\Animation\FAnimNodeTracker\FKey), [FNodeStack](API\Runtime\Engine\Animation\FAnimNodeTracker\FNodeStack), [TInlineSetAllocator](API\Runtime\Core\Containers\TInlineSetAllocator)< 4 >> FMap


className: FNodeStack

code: typedef [TArray](API\Runtime\Core\Containers\TArray)< [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) *, TInlineAllocator< 4 >> FNodeStack


code: template<typename NodeType> static [FKey](API\Runtime\Engine\Animation\FAnimNodeTracker\FKey) GetKey()


code: [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base) * Pop ( [FKey](API\Runtime\Engine\Animation\FAnimNodeTracker\FKey) Key )


code: template<typename NodeType> NodeType * Pop()


code: template<typename NodeType> [FKey](API\Runtime\Engine\Animation\FAnimNodeTracker\FKey) Push ( NodeType * Node )


code: template<typename NodeType> NodeType * Top() const


className: FAnimNodeTracker

description: DEPRECATED - This system is now supplanted byUE::Anim::FMessageStackUtility container for tracking a stack of ancestor nodes by node type during graph traversal This is not an exhaustive list of all visited ancestors. During Update nodes must callFAnimationUpdateContext::TrackAncestor()to appear in the tracker.

code: struct FAnimNodeTracker

Map

type: FMap


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


description: Get the LOD threshold at which this node is enabled. Node is enabled if the current LOD >= threshold.

code: virtual int32 GetLODThreshold() const


description: 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.

code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


description: 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.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


code: struct FAnimNode_ApplyMeshSpaceAdditive : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

Additive

type: FPoseLink

Alpha

description: The float value that controls the alpha blending when the alpha input type is set to 'Float'

AlphaBoolBlend

type: FInputAlphaBool...

AlphaCurveName

type: FName

AlphaInputType

type: EAnimAlphaInput...

description: The data type used to control the alpha blending of the additive pose.

AlphaScaleBias

type: FInputScaleBias

AlphaScaleBiasClamp

type: FInputScaleBias...

bAlphaBoolEnabled

description: The boolean value that controls the alpha blending when the alpha input type is set to 'Bool'

LODThreshold

description: Max LOD that this node is allowed to run For example if you have LODThreshold to be 2, it will run until LOD 2 (based on 0 index) when the component LOD becomes 3, it will stop update/evaluate currently transition would be issue and that has to be re-visited


description: Set the cached blendweight to zero

code: virtual void ClearCachedBlendWeight()


description: Create a tick record for this node.

code: void CreateTickRecordForNode ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * Sequence, bool bLooping, float PlayRate, bool bIsEvaluator )


code: virtual float GetAccumulatedTime() const


description: Get the last encountered blend weight for this node

code: virtual float GetCachedBlendWeight() const


code: virtual float GetCurrentAssetTimePlayRateAdjusted() const


description: Get the delta time record owned by this asset player (or null)

code: virtual const [FDeltaTimeRecord](API\Runtime\Engine\Animation\FDeltaTimeRecord) * GetDeltaTimeRecord() const


description: Get the sync group method we are using.

code: virtual EAnimSyncMethod GetGroupMethod() const


description: Get the sync group name we are using.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetGroupName() const


description: Get the sync group role we are using.

code: virtual [EAnimGroupRole::Type](API\Runtime\Engine\Animation\EAnimGroupRole__Type) GetGroupRole() const


description: Initialize function for setup purposes


description: Override the currently accumulated time

code: virtual void SetAccumulatedTime ( float NewTime )


description: Set the sync group method we are using.

code: virtual bool SetGroupMethod ( EAnimSyncMethod InMethod )


description: Set the sync group name we are using.

code: virtual bool SetGroupName ( [FName](API\Runtime\Core\UObject\FName) InGroupName )


description: Set the sync group role we are using.

code: virtual bool SetGroupRole ( [EAnimGroupRole::Type](API\Runtime\Engine\Animation\EAnimGroupRole__Type) InRole )


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

code: virtual void UpdateAssetPlayer ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


description: Update the node, marked final so we can always handle blendweight caching. Derived classes should implement UpdateAssetPlayer


description: Base class for any asset playing anim node

code: struct FAnimNode_AssetPlayerBase : public [FAnimNode_AssetPlayerRelevancyBase](API\Runtime\Engine\Animation\FAnimNode_AssetPlayerRelevancyBa-)

bHasBeenFullWeight

description: Track whether we have been full weight previously. Reset when we reach 0 weight

BlendWeight

description: Last encountered blendweight for this node

DeltaTimeRecord

description: Previous frame InternalTimeAccumulator value and effective delta time leading into the current frame

InternalTimeAccumulator

description: Accumulated time used to reference the asset in this node

MarkerTickRecord

description: Store data about current marker position when using marker based syncing


description: Set the cached blendweight to zero


description: Get the currently referenced time within the asset player node


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

code: virtual [UAnimationAsset](API\Runtime\Engine\Animation\UAnimationAsset) * GetAnimAsset() const


description: Functions to report data to getters, this is required for all asset players (but can't be pure abstract because of struct instantiation generated code).

code: virtual float GetCurrentAssetLength() const


code: virtual float GetCurrentAssetTime() const


description: Does this asset player loop back to the start when it reaches the end?

code: virtual bool IsLooping() const


description: Check whether this node should be ignored when testing for relevancy in state machines.

code: virtual bool GetIgnoreForRelevancyTest() const


description: Set whether this node should be ignored when testing for relevancy in state machines.

code: virtual bool SetIgnoreForRelevancyTest ( bool bInIgnoreForRelevancyTest )


code: struct FAnimNode_AssetPlayerRelevancyBase : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: Whether this node can run its Update() call on a worker thread. This is called on the game thread. If any node in a graph returns false from this function, then ALL nodes will update on the game thread.

code: virtual bool CanUpdateInWorkerThread() const


description: 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.

code: virtual void EvaluateComponentSpace_AnyThread ( [FComponentSpacePoseContext](API\Runtime\Engine\Animation\FComponentSpacePoseContext) & Output )


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


description: Get the anim class that this node is hosted within.

code: const [IAnimClassInterface](API\Runtime\Engine\Animation\IAnimClassInterface) * GetAnimClassInterface() const


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


description: Get anim node constant/folded data of the specified type given the identifier. Do not use directly - use GET_ANIM_NODE_DATA.

code: template<typename [DataType](API\Plugins\OptimusCore\DataType)> const [DataType](API\Plugins\OptimusCore\DataType) & GetData ( [UE::Anim::FNodeDataId](API\Runtime\Engine\Animation\FNodeDataId) InId, const [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObject ) const


description: The default handler for graph-exposed inputs:

code: const [FExposedValueHandler](API\Runtime\Engine\Animation\FExposedValueHandler) & GetEvaluateGraphExposedInputs() const


description: Get the LOD threshold at which this node is enabled. Node is enabled if the current LOD >= threshold.

code: virtual int32 GetLODThreshold() const


description: Get anim node constant/folded data of the specified type given the identifier. Do not use directly - use GET_MUTABLE_ANIM_NODE_DATA Note: will assert if data is not held on the instance/dynamic. Use GetInstanceDataPtr/GET_INSTANCE_ANIM_NODE_DATA_PTR if the value might not be mutable, which will return null.

code: template<typename [DataType](API\Plugins\OptimusCore\DataType)> [DataType](API\Plugins\OptimusCore\DataType) & GetMutableData ( [UE::Anim::FNodeDataId](API\Runtime\Engine\Animation\FNodeDataId) InId, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObject )


description: Get this node's index. The node index provides a unique key into its location within the class data.

code: int32 GetNodeIndex() const


description: Override this to indicate thatPreUpdate()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 theUAnimInstanceCDO to avoid needing to call this at runtime. This is called on the game thread.

code: virtual bool HasPreUpdate() const


description:
Get anim node mutable data of the specified type given the identifier. Do not use directly - use GET_INSTANCE_ANIM_NODE_DATA_PTR
nullptr if the data is not mutable/dynamic

code: template<typename [DataType](API\Plugins\OptimusCore\DataType)> [DataType](API\Plugins\OptimusCore\DataType) * GetInstanceDataPtr ( [UE::Anim::FNodeDataId](API\Runtime\Engine\Animation\FNodeDataId) InId, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObject )


description: 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.

code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


description: Return true if enabled, otherwise, return false. This is utility function that can be used per node level

code: bool IsLODEnabled ( [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * AnimInstanceProxy )


description: For nodes that implement some kind of simulation, return true here soResetDynamics()gets called when things like teleports, time skips etc. occur that might require special handling. Note that this is called at load on theUAnimInstanceCDO to avoid needing to call this at runtime. This is called on the game thread.

code: virtual bool NeedsDynamicReset() const


description: 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 theUAnimInstanceCDO to avoid needing to call this at runtime.

code: virtual bool NeedsOnInitializeAnimInstance() const


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

code: virtual void OnInitializeAnimInstance ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InProxy, const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Deprecated* Please use IGraphMessage instead

code: virtual void OnUpdatesSkipped ( [TArrayView](API\Runtime\Core\Containers\TArrayView)< const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) * > SkippedUpdateContexts )


description: Called after compilation

code: virtual void PostCompile ( const class [USkeleton](API\Runtime\Engine\Animation\USkeleton) * InSkeleton )


description: Deprecated* Please use the OverrideAssets API onUAnimGraphNode_Baseto opt-in to child anim BP override functionality, or per-node specific asset override calls.

code: virtual void OverrideAsset ( class [UAnimationAsset](API\Runtime\Engine\Animation\UAnimationAsset) * NewAsset )


description: Deprecated functions

code: virtual void ResetDynamics()


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

code: virtual void PreUpdate ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Called to help dynamics-based updates to recover correctly from large movements/teleports

code: virtual void ResetDynamics ( ETeleportType InTeleportType )


description: Initialization function for the default handler for graph-exposed inputs, used only by instancing code:

code: void SetExposedValueHandler ( const [FExposedValueHandler](API\Runtime\Engine\Animation\FExposedValueHandler) * Handler )


description: 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.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


code: virtual bool WantsSkippedUpdates() const


description: To create a new animation node: Create a struct derived fromFAnimNode_Base- this is your runtime node Create a class derived fromUAnimGraphNode_Base, containing an instance of your runtime node as a member - this is your visual/editor-only node

code: struct FAnimNode_Base


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


code: struct FAnimNode_ConvertComponentToLocalSpace : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

ComponentPose

type: FComponentSpace...


description: 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.

code: virtual void EvaluateComponentSpace_AnyThread ( [FComponentSpacePoseContext](API\Runtime\Engine\Animation\FComponentSpacePoseContext) & Output )


description: Get Target Class

code: virtual [UClass](API\Runtime\CoreUObject\UObject\UClass) * GetTargetClass() const


code: struct FAnimNode_ConvertLocalToComponentSpace : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)


description: Get Target Instance by type for convenience

code: template<class T> T * GetTargetInstance() const


description: Handle object reinstancing override point. When objects are replaced in editor, the FCoreUObjectDelegates::OnObjectsReplaced is called before reference replacement, so we cannot handle replacement until later. This call is made on the first PreUpdate after object replacement.

code: virtual void HandleObjectsReinstanced_Impl ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InSourceObject, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InTargetObject, const [TMap](API\Runtime\Core\Containers\TMap)< [UObject](API\Runtime\CoreUObject\UObject\UObject) *, [UObject](API\Runtime\CoreUObject\UObject\UObject) * > & OldToNewInstanceMap )


description: Initialize property links from the source instance, in this case AnimInstance Compiler creates those properties during compile time

code: virtual void InitializeProperties ( const [UObject](API\Runtime\CoreUObject\UObject\UObject) * InSourceInstance, [UClass](API\Runtime\CoreUObject\UObject\UClass) * InTargetClass )


code: virtual bool NeedsOnInitializeAnimInstance() const


description: We only subscribe to the OnInitializeAnimInstance path because we need to cache our source object, so we only override these methods in editor at the moment

code: virtual void OnInitializeAnimInstance ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InProxy, const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Propagate the Source Instances' properties to Target Instance

code: virtual void PropagateInputProperties ( const [UObject](API\Runtime\CoreUObject\UObject\UObject) * InSourceInstance )


description: Set Target Instance

code: void SetTargetInstance ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InInstance )


description: TargetInstance -UObjectderived instance that has certain dest properties Source - AnimInstance's copy properties that is used to store the data

code: struct FAnimNode_CustomProperty : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

DestProperties

type: TArray<FProper...

description: List of properties on the TargetInstance to push to, built from name list when initialised

DestPropertyNames

type: TArray<FName>

description: List of destination properties to use, 1-1 with Source names above, built by the compiler

SourceInstance

type: TObjectPtr<UOb...

description: This is the source instance, cached to help with re-instancing

SourceProperties

description: List of properties on the calling Source Instances instance to push from

SourcePropertyNames

description: List of source properties to use, 1-1 with Dest names below, built by the compiler

TargetInstance

description: This is the actual instance allocated at runtime that will run. Set by child class.


code: [USkeleton](API\Runtime\Engine\Animation\USkeleton) * GetSkeleton ( bool & bInvalidSkeletonIsError, const [IPropertyHandle](API\Editor\PropertyEditor\IPropertyHandle) * PropertyHandle )


description: Request to activate inertialization. If multiple requests are made on the same inertialization node, the request with the minimum blend time will be used.

code: virtual void RequestInertialization ( const [FInertializationRequest](API\Runtime\Engine\Animation\FInertializationRequest) & Request )


description: For nodes that implement some kind of simulation, return true here soResetDynamics()gets called when things like teleports, time skips etc. occur that might require special handling. Note that this is called at load on theUAnimInstanceCDO to avoid needing to call this at runtime. This is called on the game thread.

code: virtual bool NeedsDynamicReset() const


description: 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.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


description: These decay rates can be controlled by theExtrapolationHalfLife_,ExtrapolationHalfLifeMin_ and `ExtrapolationHalfLifeMax_ parameters, which specify the approximate average, min, and max decay periods. More specifically they specify the "half-life" - or how it takes for the velocities to be decayed by half.

code: struct FAnimNode_DeadBlending : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base), public [IBoneReferenceSkeletonProvider](API\Runtime\Engine\Interfaces\IBoneReferenceSkeletonProvider)

Source

description: Input Pose.


description: Applies the inertialization pose difference to the current pose (feathering down to zero as ElapsedTime approaches Duration). This function is virtual so that a derived class could optionally adjust the pose based on any regularization done in StartInertialization.

code: virtual void ApplyInertialization ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Context, const [FInertializationPoseDiff](API\Runtime\Engine\Animation\FInertializationPoseDiff) & PoseDiff, float ElapsedTime, float Duration, [TArrayView](API\Runtime\Core\Containers\TArrayView)< const float > DurationPerBone )


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


description: 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.

code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


description: Log an error when a node wants to inertialize but no inertialization ancestor node exists

code: static void LogRequestError ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, const int32 NodePropertyIndex )


code: static void LogRequestError ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, const [FPoseLinkBase](API\Runtime\Engine\Animation\FPoseLinkBase) & RequesterPoseLink )


description: Request to activate inertialization. If multiple requests are made on the same inertialization node, the minimum requested time will be used.

code: virtual void RequestInertialization ( const [FInertializationRequest](API\Runtime\Engine\Animation\FInertializationRequest) & InertializationRequest )


description: Request to activate inertialization for a duration. If multiple requests are made on the same inertialization node, the minimum requested time will be used.

code: virtual void RequestInertialization ( float Duration, const [UBlendProfile](API\Runtime\Engine\Animation\UBlendProfile) * BlendProfile )


description: Called to help dynamics-based updates to recover correctly from large movements/teleports

code: virtual void ResetDynamics ( ETeleportType InTeleportType )


description: Computes the inertialization pose difference from the current pose and the two previous poses (to capture velocity). This function is virtual so that a derived class could optionally regularize the pose snapshots to align better with the current frame's pose before computing the inertial difference (for example to correct for instantaneous changes in the root relative to its children).

code: virtual void StartInertialization ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Context, [FInertializationPose](API\Runtime\Engine\Animation\FInertializationPose) & PreviousPose1, [FInertializationPose](API\Runtime\Engine\Animation\FInertializationPose) & PreviousPose2, float Duration, [TArrayView](API\Runtime\Core\Containers\TArrayView)< const float > DurationPerBone, [FInertializationPoseDiff](API\Runtime\Engine\Animation\FInertializationPoseDiff) & OutPoseDiff )


code: struct FAnimNode_Inertialization : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)


description: Caches bones only for the sub graph that this node is linked to.

code: void CacheBonesSubGraph_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: Link up pose links dynamically with linked instance

code: void DynamicLink ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance )


description: Check if the currently linked instance can be teared down.

code: virtual bool CanTeardownLinkedInstance ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * LinkedInstance ) const


description: Break any pose links dynamically with linked instance

code: void DynamicUnlink ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance )


description: Helper function for finding function inputs when linking/unlinking

code: int32 FindFunctionInputIndex ( const [FAnimBlueprintFunction](API\Runtime\Engine\Animation\FAnimBlueprintFunction) & AnimBlueprintFunction, const [FName](API\Runtime\Core\UObject\FName) & InInputName )


description: Get the function name we should be linking with when we call DynamicLink/Unlink

code: virtual [FName](API\Runtime\Core\UObject\FName) GetDynamicLinkFunctionName() const


description: Get the dynamic link target

code: virtual [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * GetDynamicLinkTarget ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance ) const


description: Get Target Class

code: virtual [UClass](API\Runtime\CoreUObject\UObject\UClass) * GetTargetClass() const


description: Handle object reinstancing override point. When objects are replaced in editor, the FCoreUObjectDelegates::OnObjectsReplaced is called before reference replacement, so we cannot handle replacement until later. This call is made on the first PreUpdate after object replacement.

code: virtual void HandleObjectsReinstanced_Impl ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InSourceObject, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InTargetObject, const [TMap](API\Runtime\Core\Containers\TMap)< [UObject](API\Runtime\CoreUObject\UObject\UObject) *, [UObject](API\Runtime\CoreUObject\UObject\UObject) * > & OldToNewInstanceMap )


description: Initializes only the sub-graph that this node is linked to.

code: void InitializeSubGraph_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


description: 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 theUAnimInstanceCDO to avoid needing to call this at runtime.

code: virtual bool NeedsOnInitializeAnimInstance() const


description: We only subscribe to the OnInitializeAnimInstance path because we need to cache our source object, so we only override these methods in editor at the moment

code: virtual void OnInitializeAnimInstance ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InProxy, const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Re-create the linked instances for this node.

code: void ReinitializeLinkedAnimInstance ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance, [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InNewAnimInstance )


description: Request a blend when the active instance changes

code: void RequestBlend ( const [IAnimClassInterface](API\Runtime\Engine\Animation\IAnimClassInterface) * PriorAnimBPClass, const [IAnimClassInterface](API\Runtime\Engine\Animation\IAnimClassInterface) * NewAnimBPClass )


description: Dynamically set the anim class of this linked instance

code: void SetAnimClass ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) > InClass, const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance )


description: Shutdown the currently running instance.

code: void TeardownInstance ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance )


description: 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.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


code: struct FAnimNode_LinkedAnimGraph : public [FAnimNode_CustomProperty](API\Runtime\Engine\Animation\FAnimNode_CustomProperty)

bPropagateNotifiesToLinkedInstances

type: uint8:  1

description: Whether named notifies will be propagated from this linked instance to other instances (outer or other linked instances)

bReceiveNotifiesFromLinkedInstances

description: Whether named notifies will be received by this linked instance from other instances (outer or other linked instances)

CachedLinkedNodeIndex

description: Cached node index for our linked function.

InputPoseNames

description: List of input pose names, 1-1 with pose links about, built by the compiler

InputPoses

type: TArray<FPoseLi...

description: Input poses for the node, intentionally not accessible because if there's no input nodes in the target class we don't want to show these as pins

InstanceClass

type: TSubclassOf<UA...

description: The class spawned for this linked instance

LinkedRoot

description: The root node of the dynamically-linked graph.

NodeIndex

description: Our node index.

PendingBlendInDuration

type: float

description: Inertial blending duration to request next update (pulled from the new state's blend in)

PendingBlendInProfile

type: TObjectPtr< con...

description: Optional blend profile to use during inertial blending (pulled from the new state's blend in)

PendingBlendOutDuration

description: Inertial blending duration to request next update (pulled from the prior state's blend out)

PendingBlendOutProfile

description: Optional blend profile to use during inertial blending (pulled from the prior state's blend out)


description: Check if the currently linked instance can be teared down.

code: virtual bool CanTeardownLinkedInstance ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * LinkedInstance ) const


description: Cleanup Shared LinkedLayers Data associated with InPreviousTargetInstance.

code: void CleanupSharedLinkedLayersData ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance, [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InPreviousTargetInstance )


code: virtual void InitializeProperties ( const [UObject](API\Runtime\CoreUObject\UObject\UObject) * InSourceInstance, [UClass](API\Runtime\CoreUObject\UObject\UClass) * InTargetClass )


code: void InitializeSelfLayer ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * SelfAnimInstance )


description: Initialize the source properties to copy from.

code: void InitializeSourceProperties ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Event fired when the instance we are running has changed.


code: void OnUninitializeAnimInstance ( [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InAnimInstance )


description: Set the layer's 'overlay' externally managed linked instance.

code: void SetLinkedLayerInstance ( const [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InOwningAnimInstance, [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * InNewLinkedInstance )


code: struct FAnimNode_LinkedAnimLayer : public [FAnimNode_LinkedAnimGraph](API\Runtime\Engine\Animation\FAnimNode_LinkedAnimGraph)

Interface

description: Optional interface.

Layer

description: The layer in the interface to use

OnInstanceChangedEvent

type: FSimpleMulticas...


className: DefaultInputPoseName

description: The default name of this input pose

code: static const [FName](API\Runtime\Core\UObject\FName) DefaultInputPoseName;


description: Called by linked instance nodes to dynamically link this to an outer graph

code: void DynamicLink ( [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InInputProxy, [FPoseLinkBase](API\Runtime\Engine\Animation\FPoseLinkBase) * InPoseLink, int32 InOuterGraphNodeIndex )


description: Called by linked instance nodes to dynamically unlink this to an outer graph

code: void DynamicUnlink()


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


code: struct FAnimNode_LinkedInputPose : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

bIsCachedInputPoseInitialized

type: bool

description: CachedInputPose can have bone data allocated but uninitialized.

CachedInputCurve

type: FBlendedHeapCur...

CachedInputPose

type: FCompactHeapPos...

description: If this linked input pose is not dynamically linked, this cached data will be populated by the calling linked instance node before this graph is processed.

Graph

description: The graph that this linked input pose node is in, filled in by the compiler

InputPose

description: Input pose, optionally linked dynamically to another graph

Name

description: The name of this linked input pose node's pose, used to identify the input of this graph.

OuterGraphNodeIndex

description: The node index of the currently-linked outer node.


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: Get the group of this root node, used to group this output with others when used in a layer.


description: Get the name of this root node, used to identify the output of this graph


description: 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.

code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


description: Set the group of this root node, used to group this output with others when used in a layer.

code: void SetGroup ( [FName](API\Runtime\Core\UObject\FName) InGroup )


description: Set the name of this root node, used to identify the output of this graph

code: void SetName ( [FName](API\Runtime\Core\UObject\FName) InName )


description: 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.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


description: Root node of an animation tree (sink)

code: struct FAnimNode_Root : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

Group

type: FName

description: The group of this root node, used to group this output with others when used in a layer.

Name

description: The name of this root node, used to identify the output of this graph.

Result

type: FPoseLink


className: FCachedUpdateContext

code: struct FCachedUpdateContext

Context

type: FAnimationUpdat...

SharedContext

type: TSharedPtr<FAn...


code: struct FAnimNode_SaveCachedPose : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

CachedBonesCounter

type: FGraphTraversal...

CachedUpdateContexts

type: TArray<FCached...

CachePoseName

description: Intentionally not exposed, set by AnimBlueprintCompiler


description: Get the sync group method we are using.

code: virtual EAnimSyncMethod GetGroupMethod() const


description: Get the sync group name we are using.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetGroupName() const


description: Get the sync group role we are using.

code: virtual [EAnimGroupRole::Type](API\Runtime\Engine\Animation\EAnimGroupRole__Type) GetGroupRole() const


description: Check whether this node should be ignored when testing for relevancy in state machines.

code: virtual bool GetIgnoreForRelevancyTest() const


description: The play rate multiplier. Can be negative, which will cause the animation to play in reverse.

code: virtual float GetPlayRate() const


description: The Basis in which the PlayRate is expressed in. This is used to rescale PlayRate inputs. For example a Basis of 100 means that the PlayRate input will be divided by 100.

code: virtual float GetPlayRateBasis() const


description: Additional scaling, offsetting and clamping of PlayRate input. Performed after PlayRateBasis.

code: virtual const [FInputScaleBiasClampConstants](API\Runtime\Engine\Animation\FInputScaleBiasClampConstants) & GetPlayRateScaleBiasClampConstants() const


description: The animation sequence asset to play.

code: virtual [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * GetSequence() const


description: The start position [range: 0 - sequence length] to use when initializing. When looping, play will still jump back to the beginning when reaching the end.

code: virtual float GetStartPosition() const


description: Use pose matching to choose the start position. Requires experimental PoseSearch plugin.

code: virtual bool GetStartFromMatchingPose() const


description: Does this asset player loop back to the start when it reaches the end?

code: virtual bool IsLooping() const


description: Set the sync group method we are using.

code: virtual bool SetGroupMethod ( EAnimSyncMethod InMethod )


description: Set the sync group role we are using.

code: virtual bool SetGroupRole ( [EAnimGroupRole::Type](API\Runtime\Engine\Animation\EAnimGroupRole__Type) InRole )


description: Set the sync group name we are using.

code: virtual bool SetGroupName ( [FName](API\Runtime\Core\UObject\FName) InGroupName )


description: Set whether this node should be ignored when testing for relevancy in state machines.

code: virtual bool SetIgnoreForRelevancyTest ( bool bInIgnoreForRelevancyTest )


description: Set the animation to continue looping when it reaches the end.

code: virtual bool SetLoopAnimation ( bool bInLoopAnimation )


description:
Set the play rate of this node.
true if the value was set (it is dynamic), or false if it could not (it is not dynamic or pin exposed)

code: virtual bool SetPlayRate ( float InPlayRate )


description: Set the animation sequence asset to play.

code: virtual bool SetSequence ( [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InSequence )


description:
Set the start time of this node.
true if the value was set (it is dynamic), or false if it could not (it is not dynamic or pin exposed)

code: virtual bool SetStartPosition ( float InStartPosition )


description: Sequence player node that can be used with constant folding.

code: struct FAnimNode_SequencePlayer : public [FAnimNode_SequencePlayerBase](API\Runtime\Engine\Animation\FAnimNode_SequencePlayerBase)

bIgnoreForRelevancyTest

description: If true, "Relevant anim" nodes that look for the highest weighted animation in a state will ignore this node.

bLoopAnimation

description: Should the animation loop back to the start when it reaches the end?

GroupName

description: The group name (NAME_None if it is not part of any group)

GroupRole

type: TEnumAsByte<EA...

description: The role this player can assume within the group (ignored if GroupIndex is INDEX_NONE)

Method

type: EAnimSyncMethod

description: How synchronization is determined.

PlayRateBasis

description: The Basis in which the PlayRate is expressed in.

PlayRateScaleBiasClampConstants

type: FInputScaleBias...

Sequence

type: TObjectPtr<UAn...

description: The animation sequence asset to play.

StartPosition

description: The start position between 0 and the length of the sequence to use when initializing. When looping, play will still jump back to the beginning when reaching the end.


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


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

code: virtual [UAnimationAsset](API\Runtime\Engine\Animation\UAnimationAsset) * GetAnimAsset() const


description: Functions to report data to getters, this is required for all asset players (but can't be pure abstract because of struct instantiation generated code).

code: virtual float GetCurrentAssetLength() const


code: virtual float GetCurrentAssetTimePlayRateAdjusted() const


code: virtual float GetCurrentAssetTime() const


description: Deprecated* GetEffectiveStartPosition is no longer supported. Please use GetStartPosition instead

code: float GetEffectiveStartPosition ( const [FAnimationBaseContext](API\Runtime\Engine\Animation\FAnimationBaseContext) & Context ) const


code: virtual bool GetLoopAnimation() const


description: The play rate multiplier. Can be negative, which will cause the animation to play in reverse.

code: virtual float GetPlayRate() const


description: The Basis in which the PlayRate is expressed in. This is used to rescale PlayRate inputs. For example a Basis of 100 means that the PlayRate input will be divided by 100.

code: virtual float GetPlayRateBasis() const


description: Additional scaling, offsetting and clamping of PlayRate input. Performed after PlayRateBasis.

code: virtual const [FInputScaleBiasClampConstants](API\Runtime\Engine\Animation\FInputScaleBiasClampConstants) & GetPlayRateScaleBiasClampConstants() const


description: The animation sequence asset to play.

code: virtual [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * GetSequence() const


description: Use pose matching to choose the start position. Requires experimental PoseSearch plugin.

code: virtual bool GetStartFromMatchingPose() const


description: The start position [range: 0 - sequence length] to use when initializing. When looping, play will still jump back to the beginning when reaching the end.

code: virtual float GetStartPosition() const


code: float GetTimeFromEnd ( float CurrentNodeTime ) const


description: Initialize function for setup purposes

code: virtual void Initialize_AnyThread ( const [FAnimationInitializeContext](API\Runtime\Engine\Animation\FAnimationInitializeContext) & Context )


description: Set the animation to continue looping when it reaches the end.

code: virtual bool SetLoopAnimation ( bool bInLoopAnimation )


description:
Set the play rate of this node.
true if the value was set (it is dynamic), or false if it could not (it is not dynamic or pin exposed)

code: virtual bool SetPlayRate ( float InPlayRate )


description: Set the animation sequence asset to play.

code: virtual bool SetSequence ( [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InSequence )


description:
Set the start time of this node.
true if the value was set (it is dynamic), or false if it could not (it is not dynamic or pin exposed)

code: virtual bool SetStartPosition ( float InStartPosition )


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

code: virtual void UpdateAssetPlayer ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


description: Get the sync group method we are using.

code: virtual EAnimSyncMethod GetGroupMethod() const


description: Sequence player node. Not instantiated directly, useFAnimNode_SequencePlayerorFAnimNode_SequencePlayer_Standalone.

code: struct FAnimNode_SequencePlayerBase : public [FAnimNode_AssetPlayerBase](API\Runtime\Engine\Animation\FAnimNode_AssetPlayerBase)

PlayRateScaleBiasClampState

description: Corresponding state for PlayRateScaleBiasClampConstants.


description: Get the sync group name we are using.

code: virtual [FName](API\Runtime\Core\UObject\FName) GetGroupName() const


description: Get the sync group role we are using.

code: virtual [EAnimGroupRole::Type](API\Runtime\Engine\Animation\EAnimGroupRole__Type) GetGroupRole() const


description: Check whether this node should be ignored when testing for relevancy in state machines.

code: virtual bool GetIgnoreForRelevancyTest() const


code: virtual float GetPlayRate() const


code: virtual float GetPlayRateBasis() const


code: virtual const [FInputScaleBiasClampConstants](API\Runtime\Engine\Animation\FInputScaleBiasClampConstants) & GetPlayRateScaleBiasClampConstants() const


description: The animation sequence asset to play.

code: virtual [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * GetSequence() const


code: virtual bool GetStartFromMatchingPose() const


description: Does this asset player loop back to the start when it reaches the end?

code: virtual bool IsLooping() const


code: virtual float GetStartPosition() const


description: Set the sync group method we are using.

code: virtual bool SetGroupMethod ( EAnimSyncMethod InMethod )


description: Set the sync group name we are using.

code: virtual bool SetGroupName ( [FName](API\Runtime\Core\UObject\FName) InGroupName )


description: Set the sync group role we are using.

code: virtual bool SetGroupRole ( [EAnimGroupRole::Type](API\Runtime\Engine\Animation\EAnimGroupRole__Type) InRole )


description: Set whether this node should be ignored when testing for relevancy in state machines.

code: virtual bool SetIgnoreForRelevancyTest ( bool bInIgnoreForRelevancyTest )


code: virtual bool SetLoopAnimation ( bool bInLoopAnimation )


code: virtual bool SetPlayRate ( float InPlayRate )


code: virtual bool SetStartPosition ( float InStartPosition )


description: Sequence player node that can be used standalone (without constant folding)

code: struct FAnimNode_SequencePlayer_Standalone : public [FAnimNode_SequencePlayerBase](API\Runtime\Engine\Animation\FAnimNode_SequencePlayerBase)

bIgnoreForRelevancyTest

description: If true, "Relevant anim" nodes that look for the highest weighted animation in a state will ignore this node.

bLoopAnimation

description: Should the animation loop back to the start when it reaches the end?

GroupName

description: The group name (NAME_None if it is not part of any group)

GroupRole

description: The role this player can assume within the group (ignored if GroupIndex is INDEX_NONE)

Method

description: How synchronization is determined.

PlayRateBasis

description: The Basis in which the PlayRate is expressed in.

Sequence

description: The animation sequence asset to play.

StartPosition

description: The start position between 0 and the length of the sequence to use when initializing. When looping, play will still jump back to the beginning when reaching the end.


description: 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.

code: virtual void Evaluate_AnyThread ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output )


description: 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.

code: virtual void Update_AnyThread ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context )


description: Local anim node for extensible processing. Cant be used outside of this context as it has no graph node counterpart

code: struct FAnimNode_SingleNode : public [FAnimNode_Base](API\Runtime\Engine\Animation\FAnimNode_Base)

ActiveMontageSlot

description: Slot to use if we are evaluating a montage.


description: Set the animation sequence asset to play.

code: virtual bool SetSequence ( [UAnimSequenceBase](API\Runtime\Engine\Animation\UAnimSequenceBase) * InSequence )


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

code: virtual void CacheBones_AnyThread ( const [FAnimationCacheBonesContext](API\Runtime\Engine\Animation\FAnimationCacheBonesContext) & Context )


description: Cache the internal machine description

code: void CacheMachineDescription ( [IAnimClassInterface](API\Runtime\Engine\Animation\IAnimClassInterface) * AnimBlueprintClass )


description: Removes all queued transition requests

code: void ClearAllTransitionEvents()


description: Removes all queued transition requests with the given event name

code: void ClearTransitionEvents ( const [FName](API\Runtime\Core\UObject\FName) & EventName )


code: void ConditionallyCacheBonesForState ( int32 StateIndex, [FAnimationBaseContext](API\Runtime\Engine\Animation\FAnimationBaseContext) Context )


description: Removes all marked events that are queued

code: void ConsumeMarkedTransitionEvents()


code: const [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & EvaluateState ( int32 StateIndex, const [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Context )


description: Transition type evaluation functions

code: void EvaluateTransitionStandardBlendInternal ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output, [FAnimationActiveTransitionEntry](API\Runtime\Engine\Animation\FAnimationActiveTransitionEntry) & Transition, const [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & PreviousStateResult, const [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & NextStateResult )


description: Transition type evaluation functions

code: void EvaluateTransitionStandardBlend ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output, [FAnimationActiveTransitionEntry](API\Runtime\Engine\Animation\FAnimationActiveTransitionEntry) & Transition, bool bIntermediatePoseIsValid )


code: void EvaluateTransitionCustomBlend ( [FPoseContext](API\Runtime\Engine\Animation\FPoseContext) & Output, [FAnimationActiveTransitionEntry](API\Runtime\Engine\Animation\FAnimationActiveTransitionEntry) & Transition, bool bIntermediatePoseIsValid )


description: Finds the highest priority valid transition, information pass via the OutPotentialTransition variable. OutVisitedStateIndices will let you know what states were checked, but is also used to make sure we don't get stuck in an infinite loop or recheck states

code: bool FindValidTransition ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, const [FBakedAnimationState](API\Runtime\Engine\Animation\FBakedAnimationState) & StateInfo, [FAnimationPotentialTransition](API\Runtime\Engine\Animation\FAnimationPotentialTransition) & OutPotentialTransition, [TArray](API\Runtime\Core\Containers\TArray)< int32, TInlineAllocator< 4 >> & OutVisitedStateIndices )


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

code: virtual void GatherDebugData ( [FNodeDebugData](API\Runtime\Engine\Animation\FNodeDebugData) & DebugData )


description: Tries to get the instance information for the state machine.

code: const [FBakedAnimationStateMachine](API\Runtime\Engine\Animation\FBakedAnimationStateMachine) * GetMachineDescription() const


description: Get the time remaining as a fraction of the duration for the most relevant animation in the source state.

code: float GetRelevantAnimTimeRemainingFraction ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InAnimInstanceProxy, int32 StateIndex ) const


code: float GetRelevantAnimTimeRemainingFraction ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, int32 StateIndex ) const


description: Get the time remaining in seconds for the most relevant animation in the source state.

code: float GetRelevantAnimTimeRemaining ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InAnimInstanceProxy, int32 StateIndex ) const


code: float GetRelevantAnimTimeRemaining ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, int32 StateIndex ) const


description: Deprecated* Please use GetRelevantAssetPlayerInterfaceFromState

code: const [FAnimNode_AssetPlayerBase](API\Runtime\Engine\Animation\FAnimNode_AssetPlayerBase) * GetRelevantAssetPlayerFromState ( const [FAnimInstanceProxy](API\Runtime\Engine\Animation\FAnimInstanceProxy) * InAnimInstanceProxy, const [FBakedAnimationState](API\Runtime\Engine\Animation\FBakedAnimationState) & StateInfo ) const


code: const [FAnimNode_AssetPlayerBase](API\Runtime\Engine\Animation\FAnimNode_AssetPlayerBase) * GetRelevantAssetPlayerFromState ( const [FAnimationUpdateContext](API\Runtime\Engine\Animation\FAnimationUpdateContext) & Context, const [FBakedAnimationState](API\Runtime\Engine\Animation\FBakedAnimationState) & StateInfo ) const