UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AnimSingleNodeInstance.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
9#pragma once
10
11#include "CoreMinimal.h"
13#include "Misc/Optional.h"
15#include "Animation/AnimTypes.h"
16#include "AnimSingleNodeInstance.generated.h"
17
19
21
22UCLASS(transient, NotBlueprintable, MinimalAPI)
24{
26
27 // Disable compiler-generated deprecation warnings by implementing our own destructor
31
35
37 FPostEvaluateAnimEvent PostEvaluateAnimEvent;
38
39 //~ Begin UAnimInstance Interface
40 ENGINE_API virtual void NativeInitializeAnimation() override;
41 ENGINE_API virtual void NativePostEvaluateAnimation() override;
42 ENGINE_API virtual void OnMontageInstanceStopped(FAnimMontageInstance& StoppedMontageInstance) override;
43
44protected:
45 ENGINE_API virtual void Montage_Advance(float DeltaTime) override;
46 //~ End UAnimInstance Interface
47public:
48 UFUNCTION(BlueprintCallable, Category="Animation")
49 ENGINE_API void SetMirrorDataTable(const UMirrorDataTable* MirrorDataTable);
50 UFUNCTION(BlueprintCallable, Category="Animation")
51 ENGINE_API const UMirrorDataTable* GetMirrorDataTable();
52 UFUNCTION(BlueprintCallable, Category="Animation")
53 ENGINE_API void SetLooping(bool bIsLooping);
54 UFUNCTION(BlueprintCallable, Category="Animation")
55 ENGINE_API void SetPlayRate(float InPlayRate);
56 UFUNCTION(BlueprintCallable, Category="Animation")
57 ENGINE_API void SetReverse(bool bInReverse);
58 UFUNCTION(BlueprintCallable, Category="Animation")
59 ENGINE_API void SetPosition(float InPosition, bool bFireNotifies=true);
60 UFUNCTION(BlueprintCallable, Category="Animation")
61 ENGINE_API void SetPositionWithPreviousTime(float InPosition, float InPreviousTime, bool bFireNotifies=true);
62 UFUNCTION(BlueprintCallable, Category="Animation")
63 ENGINE_API void SetBlendSpacePosition(const FVector& InPosition);
64 UFUNCTION(BlueprintCallable, Category="Animation")
65 ENGINE_API void SetPlaying(bool bIsPlaying);
66 UFUNCTION(BlueprintCallable, Category="Animation")
67 ENGINE_API float GetLength();
68 /* For AnimSequence specific **/
69 UFUNCTION(BlueprintCallable, Category="Animation")
70 ENGINE_API void PlayAnim(bool bIsLooping=false, float InPlayRate=1.f, float InStartPosition=0.f);
71 UFUNCTION(BlueprintCallable, Category="Animation")
72 ENGINE_API void StopAnim();
74 UFUNCTION(BlueprintCallable, Category="Animation")
75 ENGINE_API virtual void SetAnimationAsset(UAnimationAsset* NewAsset, bool bIsLooping=true, float InPlayRate=1.f);
77 UFUNCTION(BlueprintCallable, Category = "Animation")
78 ENGINE_API virtual UAnimationAsset* GetAnimationAsset() const;
80 UFUNCTION(BlueprintCallable, Category = "Animation")
81 ENGINE_API void SetPreviewCurveOverride(const FName& PoseName, float Value, bool bRemoveIfZero);
82
83public:
85 ENGINE_API void GetBlendSpaceState(FVector& OutPosition, FVector& OutFilteredPosition) const;
86
88 ENGINE_API void StepForward();
89 ENGINE_API void StepBackward();
90
92 ENGINE_API virtual void RestartMontage(UAnimMontage * Montage, FName FromSection = FName());
93 ENGINE_API void SetMontageLoop(UAnimMontage* Montage, bool bIsLooping, FName StartingSection = FName());
94
96 ENGINE_API void SetMontagePreviewSlot(FName PreviewSlot);
97
99 ENGINE_API void UpdateMontageWeightForTimeSkip(float TimeDifference);
100
102 ENGINE_API void UpdateBlendspaceSamples(FVector InBlendInput);
103
105 ENGINE_API bool IsPlaying() const;
106
108 ENGINE_API bool IsReverse() const;
109
111 ENGINE_API bool IsLooping() const;
112
114 ENGINE_API float GetCurrentTime() const;
115
117 ENGINE_API float GetPlayRate() const;
118
120 ENGINE_API UAnimationAsset* GetCurrentAsset();
121
123 ENGINE_API FVector GetFilterLastOutput();
124
127
130
131
132protected:
133 ENGINE_API virtual FAnimInstanceProxy* CreateAnimInstanceProxy() override;
134};
135
136
137
UAnimMontage bool UAnimMontage UAnimMontage Montage
Definition AnimInstance.h:84
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_DYNAMIC_DELEGATE(DelegateName)
Definition DelegateCombinations.h:35
#define PRAGMA_ENABLE_DEPRECATION_WARNINGS
Definition GenericPlatformCompilerPreSetup.h:12
#define PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition GenericPlatformCompilerPreSetup.h:8
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition NameTypes.h:617
Definition AnimInstance.h:353
Definition AnimSingleNodeInstance.h:24
Definition AnimationAsset.h:1020
Definition MirrorDataTable.h:102
Definition AnimInstanceProxy.h:144
ENGINE_API void SetInterpolationOverride(TOptional< EAnimInterpolationType > InterpolationType)
Definition AnimInstanceProxy.cpp:3772
ENGINE_API TOptional< EAnimInterpolationType > GetInterpolationOverride() const
Definition AnimInstanceProxy.cpp:3777
Definition AnimMontage.h:335
Definition ObjectPtr.h:488
Definition Optional.h:131