RealDocs

UAnimInstance::BlueprintPostEvaluateAnimation

function Engine Blueprint Since 4.15
#include "Animation/AnimInstance.h"
Access: public Specifiers: virtualUFUNCTIONBlueprintImplementableEvent

Description

Blueprint event called after the animation graph has been evaluated and final pose computed. Use this to read or modify bone transforms after all blending and IK has been applied, such as adjusting weapon attachment bones or reading hand positions for procedural effects.

Caveats & Gotchas

  • Runs after evaluation but before the results are pushed to the skeletal mesh component, so modifications to bone transforms here will be reflected in the final render but not in subsequent animation graph evaluations in the same frame.
  • This event runs on the game thread after parallel evaluation completes. Accessing anim graph node data here is safe, but it adds game-thread cost after the parallel work has finished.

Signature

virtual void BlueprintPostEvaluateAnimation()

Return Type

void

Example

Read final bone transform after evaluation C++
// In Animation Blueprint event graph:
// 1. Override BlueprintPostEvaluateAnimation
// 2. Use GetBoneTransformByName to read the evaluated pose
// 3. Apply procedural adjustments if needed

// C++ equivalent:
void UMyAnimInstance::NativePostEvaluateAnimation()
{
    Super::NativePostEvaluateAnimation();
    // Read evaluated bone transforms for gameplay logic
    FTransform HandTransform = GetSkelMeshComponent()->GetBoneTransform(FName("hand_r"));
    OnHandTransformUpdated(HandTransform);
}

Version History

Introduced in: 4.15

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.