UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AnimStats.h File Reference
#include "CoreMinimal.h"
#include "Stats/Stats.h"
#include "Animation/AnimMTStats.h"

Go to the source code of this file.

Macros

#define ANIMNODE_STATS_VERBOSE   0
 
#define DO_ANIMSTAT_PROCESSING(StatName)   DECLARE_CYCLE_STAT_EXTERN(TEXT(#StatName), STAT_ ## StatName, STATGROUP_Anim, ENGINE_API)
 
#define DO_ANIMSTAT_PROCESSING(StatName)   DECLARE_CYCLE_STAT_EXTERN(TEXT(#StatName) TEXT("_WorkerThread"), STAT_ ## StatName ## _WorkerThread, STATGROUP_Anim, ENGINE_API)
 
#define ANIM_MT_SCOPE_CYCLE_COUNTER(StatName, bIsMultithreaded)
 
#define ANIM_MT_SCOPE_CYCLE_COUNTER_VERBOSE(StateName, bIsMultithreaded)
 

Functions

 DECLARE_CYCLE_STAT_EXTERN (TEXT("SkinnedMeshComp Tick"), STAT_SkinnedMeshCompTick, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("TickUpdateRate"), STAT_TickUpdateRate, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("Anim Tick Time"), STAT_AnimTickTime, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("StateMachine Update"), STAT_AnimStateMachineUpdate, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("StateMachine Find Transition"), STAT_AnimStateMachineFindTransition, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("RefreshBoneTransforms"), STAT_RefreshBoneTransforms, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("Post Anim Evaluation"), STAT_PostAnimEvaluation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("Trigger Notifies"), STAT_AnimTriggerAnimNotifies, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("Anim Decompression"), STAT_GetAnimationPose, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("InterpolateSkippedFrames"), STAT_InterpolateSkippedFrames, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateKinematicBonesToAnim"), STAT_UpdateRBBones, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateRBJointsMotors"), STAT_UpdateRBJoints, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("FinalizeAnimationUpdate"), STAT_FinalizeAnimationUpdate, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("SkelComp UpdateTransform"), STAT_SkelCompUpdateTransform, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("MeshObject Update"), STAT_MeshObjectUpdate, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("Calc SkelMesh Bounds"), STAT_CalcSkelMeshBounds, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("BlendInPhysics"), STAT_BlendInPhysics, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("SkinPerPolyVertices);"), STAT_SkinPerPolyVertices, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateTriMeshVertices"), STAT_UpdateTriMeshVertices, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("AnimGameThreadTime"), STAT_AnimGameThreadTime, STATGROUP_Anim, ENGINE_API)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("PreUpdateAnimation"), STAT_PreUpdateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateAnimation"), STAT_UpdateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("PostUpdateAnimation"), STAT_PostUpdateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("BlueprintUpdateAnimation"), STAT_BlueprintUpdateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("NativeUpdateAnimation"), STAT_NativeUpdateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("NativeThreadSafeUpdateAnimation"), STAT_NativeThreadSafeUpdateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("BlueprintPostEvaluateAnimation"), STAT_BlueprintPostEvaluateAnimation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("MontageAdvance"), STAT_Montage_Advance, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("MontageUpdateWeight"), STAT_Montage_UpdateWeight, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateCurves"), STAT_UpdateCurves, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateCurvesToEvaluationContext"), STAT_UpdateCurvesToEvaluationContext, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("UpdateCurvesPostEvaluation"), STAT_UpdateCurvesPostEvaluation, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("TickAssetPlayerInstances"), STAT_TickAssetPlayerInstances, STATGROUP_Anim,)
 
 DECLARE_CYCLE_STAT_EXTERN (TEXT("TickAssetPlayerInstance"), STAT_TickAssetPlayerInstance, STATGROUP_Anim,)
 

Macro Definition Documentation

◆ ANIM_MT_SCOPE_CYCLE_COUNTER

#define ANIM_MT_SCOPE_CYCLE_COUNTER (   StatName,
  bIsMultithreaded 
)

◆ ANIM_MT_SCOPE_CYCLE_COUNTER_VERBOSE

#define ANIM_MT_SCOPE_CYCLE_COUNTER_VERBOSE (   StateName,
  bIsMultithreaded 
)

◆ ANIMNODE_STATS_VERBOSE

#define ANIMNODE_STATS_VERBOSE   0

◆ DO_ANIMSTAT_PROCESSING [1/2]

#define DO_ANIMSTAT_PROCESSING (   StatName)    DECLARE_CYCLE_STAT_EXTERN(TEXT(#StatName), STAT_ ## StatName, STATGROUP_Anim, ENGINE_API)

◆ DO_ANIMSTAT_PROCESSING [2/2]

#define DO_ANIMSTAT_PROCESSING (   StatName)    DECLARE_CYCLE_STAT_EXTERN(TEXT(#StatName) TEXT("_WorkerThread"), STAT_ ## StatName ## _WorkerThread, STATGROUP_Anim, ENGINE_API)

Function Documentation

◆ DECLARE_CYCLE_STAT_EXTERN() [1/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("Anim Decompression" ,
STAT_GetAnimationPose  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [2/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("Anim Tick Time" ,
STAT_AnimTickTime  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [3/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("AnimGameThreadTime")  ,
STAT_AnimGameThreadTime  ,
STATGROUP_Anim  ,
ENGINE_API   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [4/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("BlendInPhysics")  ,
STAT_BlendInPhysics  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [5/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("BlueprintPostEvaluateAnimation")  ,
STAT_BlueprintPostEvaluateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [6/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("BlueprintUpdateAnimation")  ,
STAT_BlueprintUpdateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [7/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("Calc SkelMesh Bounds" ,
STAT_CalcSkelMeshBounds  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [8/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("FinalizeAnimationUpdate")  ,
STAT_FinalizeAnimationUpdate  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [9/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("InterpolateSkippedFrames")  ,
STAT_InterpolateSkippedFrames  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [10/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("MeshObject Update" ,
STAT_MeshObjectUpdate  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [11/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("MontageAdvance")  ,
STAT_Montage_Advance  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [12/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("MontageUpdateWeight")  ,
STAT_Montage_UpdateWeight  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [13/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("NativeThreadSafeUpdateAnimation")  ,
STAT_NativeThreadSafeUpdateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [14/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("NativeUpdateAnimation")  ,
STAT_NativeUpdateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [15/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("Post Anim Evaluation" ,
STAT_PostAnimEvaluation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [16/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("PostUpdateAnimation")  ,
STAT_PostUpdateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [17/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("PreUpdateAnimation")  ,
STAT_PreUpdateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [18/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("RefreshBoneTransforms")  ,
STAT_RefreshBoneTransforms  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [19/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("SkelComp UpdateTransform" ,
STAT_SkelCompUpdateTransform  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [20/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("SkinnedMeshComp Tick" ,
STAT_SkinnedMeshCompTick  ,
STATGROUP_Anim   
)

Skeletal stats

◆ DECLARE_CYCLE_STAT_EXTERN() [21/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("SkinPerPolyVertices);"  )

◆ DECLARE_CYCLE_STAT_EXTERN() [22/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("StateMachine Find Transition" ,
STAT_AnimStateMachineFindTransition  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [23/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("StateMachine Update" ,
STAT_AnimStateMachineUpdate  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [24/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("TickAssetPlayerInstance")  ,
STAT_TickAssetPlayerInstance  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [25/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("TickAssetPlayerInstances")  ,
STAT_TickAssetPlayerInstances  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [26/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("TickUpdateRate")  ,
STAT_TickUpdateRate  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [27/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("Trigger Notifies" ,
STAT_AnimTriggerAnimNotifies  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [28/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateAnimation")  ,
STAT_UpdateAnimation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [29/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateCurves")  ,
STAT_UpdateCurves  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [30/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateCurvesPostEvaluation")  ,
STAT_UpdateCurvesPostEvaluation  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [31/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateCurvesToEvaluationContext")  ,
STAT_UpdateCurvesToEvaluationContext  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [32/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateKinematicBonesToAnim")  ,
STAT_UpdateRBBones  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [33/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateRBJointsMotors")  ,
STAT_UpdateRBJoints  ,
STATGROUP_Anim   
)

◆ DECLARE_CYCLE_STAT_EXTERN() [34/34]

DECLARE_CYCLE_STAT_EXTERN ( TEXT("UpdateTriMeshVertices")  ,
STAT_UpdateTriMeshVertices  ,
STATGROUP_Anim   
)