Navigation
API > API/Runtime > API/Runtime/Constraints
FAnimationEvaluator allows evaluating the animation of a skeletal mesh without having to tick it directly. USkeletalMeshComponent::TickAnimation & USkeletalMeshComponent::RefreshBoneTransforms update internal data, in particular bones transforms, which leads to several side effects (motion blur for example) as well as poor performance. This structure provides a cached equivalent of USkeletalMeshComponent::RefreshBoneTransforms, which is only updated on demand. It's also bound to USkeletalMeshComponent::OnBoneTransformsFinalizedMC so that it's updated with the real values once the skeletal mesh is finally up to date.
| Name | FAnimationEvaluator |
| Type | struct |
| Header File | /Engine/Source/Runtime/Experimental/Animation/Constraints/Public/Transform/AnimationEvaluation.h |
| Include Path | #include "Transform/AnimationEvaluation.h" |
Syntax
struct FAnimationEvaluator
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Transform/AnimationEvaluation.h | |||
FAnimationEvaluator
(
USkeletalMeshComponent* InSkeletalMeshComponent |
Transform/AnimationEvaluation.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FAnimationEvaluator() |
Transform/AnimationEvaluation.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| Context | FAnimationEvaluationContext | Transform/AnimationEvaluation.h | ||
| OnBoneTransformsFinalizedHandle | FDelegateHandle | Transform/AnimationEvaluation.h | ||
| PostEvaluationTasks | TMap< FGuid, FAnimationEvaluationTask > | Transform/AnimationEvaluation.h | ||
| SkeletalMeshComponent | TWeakObjectPtr< USkeletalMeshComponent > | Transform/AnimationEvaluation.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AddPostEvaluationTask
(
const FAnimationEvaluationTask& InTask |
Adds a post-evaluation task to this evaluator if it has not already been added (returns true if added). | Transform/AnimationEvaluation.h | |
FTransform GetGlobalTransform
(
const FName InSocketName |
Returns InSocketName component space transform composed with the skeletal mesh component's global transform. | Transform/AnimationEvaluation.h | |
FTransform GetRelativeTransform
(
const FName InSocketName |
Returns InSocketName component space transform composed with the skeletal mesh component's relative transform. | Transform/AnimationEvaluation.h | |
bool IsValid
(
const bool bForTransform |
Returns true if the skeletal mesh component, its skeletal mesh and the transforms are valid for use. | Transform/AnimationEvaluation.h | |
void Update
(
const bool bRefreshBoneTransforms |
Clears the context and refresh the bones transforms if bRefreshBoneTransforms is true. | Transform/AnimationEvaluation.h |