UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
AnimNotifyState.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3
4#pragma once
5
6#include "CoreMinimal.h"
8#include "UObject/Object.h"
11#include "AnimNotifyState.generated.h"
12
14class USkeletalMeshComponent;
15struct FAnimNotifyEvent;
17#if WITH_EDITORONLY_DATA
19class FCanvas;
20class FSceneView;
21#endif
22
23UCLASS(abstract, editinlinenew, Blueprintable, const, hidecategories=Object, collapsecategories, meta=(ShowWorldContextPin), MinimalAPI)
25{
27
28
31 UFUNCTION(BlueprintNativeEvent)
32 ENGINE_API FString GetNotifyName() const;
33
34 UFUNCTION(BlueprintImplementableEvent, meta=(AutoCreateRefTerm="EventReference"))
35 ENGINE_API bool Received_NotifyBegin(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float TotalDuration, const FAnimNotifyEventReference& EventReference) const;
36
37 UFUNCTION(BlueprintImplementableEvent, meta=(AutoCreateRefTerm="EventReference"))
38 ENGINE_API bool Received_NotifyTick(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float FrameDeltaTime, const FAnimNotifyEventReference& EventReference) const;
39
40 UFUNCTION(BlueprintImplementableEvent, meta=(AutoCreateRefTerm="EventReference"))
41 ENGINE_API bool Received_NotifyEnd(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, const FAnimNotifyEventReference& EventReference) const;
42
43#if WITH_EDITORONLY_DATA
45 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=AnimNotify)
47
49 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category=AnimNotify)
51#endif // WITH_EDITORONLY_DATA
52
53#if WITH_EDITOR
55 virtual bool CanBePlaced(UAnimSequenceBase* Animation) const { return true; }
56 virtual void ValidateAssociatedAssets() {}
57 virtual void DrawInEditor(FPrimitiveDrawInterface* PDI, USkeletalMeshComponent* MeshComp, const UAnimSequenceBase* Animation, const FAnimNotifyEvent& NotifyEvent) const {}
58 virtual void DrawCanvasInEditor(FCanvas& Canvas, FSceneView& View, USkeletalMeshComponent* MeshComp, const UAnimSequenceBase* Animation, const FAnimNotifyEvent& NotifyEvent) const {}
59
61 virtual bool ShouldFireInEditor() { return bShouldFireInEditor; }
62#endif
63
64 UE_DEPRECATED(5.0, "This function is deprecated. Use the other NotifyBegin instead.")
65 ENGINE_API virtual void NotifyBegin(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float TotalDuration);
66 UE_DEPRECATED(5.0, "This function is deprecated. Use the other NotifyTick instead.")
67 ENGINE_API virtual void NotifyTick(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float FrameDeltaTime);
68 UE_DEPRECATED(5.0, "This function is deprecated. Use the other NotifyEnd instead.")
69 ENGINE_API virtual void NotifyEnd(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation);
70
71 ENGINE_API virtual void NotifyBegin(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float TotalDuration, const FAnimNotifyEventReference& EventReference);
72 ENGINE_API virtual void NotifyTick(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float FrameDeltaTime, const FAnimNotifyEventReference& EventReference);
73 ENGINE_API virtual void NotifyEnd(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, const FAnimNotifyEventReference& EventReference);
74
75 ENGINE_API virtual void BranchingPointNotifyBegin(FBranchingPointNotifyPayload& BranchingPointPayload);
76 ENGINE_API virtual void BranchingPointNotifyTick(FBranchingPointNotifyPayload& BranchingPointPayload, float FrameDeltaTime);
77 ENGINE_API virtual void BranchingPointNotifyEnd(FBranchingPointNotifyPayload& BranchingPointPayload);
78
79 // @todo document
80 virtual FString GetEditorComment()
81 {
82 return TEXT("");
83 }
84
86 UFUNCTION(BlueprintNativeEvent)
87 ENGINE_API float GetDefaultTriggerWeightThreshold() const;
88
89 // @todo document
90 virtual FLinearColor GetEditorColor()
91 {
92#if WITH_EDITORONLY_DATA
94#else
96#endif // WITH_EDITORONLY_DATA
97 }
98
100 ENGINE_API virtual void PostLoad() override;
101 ENGINE_API virtual void PreSave(FObjectPreSaveContext ObjectSaveContext) override;
105 bool bIsNativeBranchingPoint;
106
107protected:
108 ENGINE_API UObject* GetContainingAsset() const;
109};
110
111
112
const FBranchingPointNotifyPayload BranchingPointPayload
Definition AnimInstance.h:121
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
#define TEXT(x)
Definition Platform.h:1272
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#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 CanvasTypes.h:211
Definition ObjectSaveContext.h:244
Definition PrimitiveDrawInterface.h:19
Definition SceneView.h:1425
Definition AnimNotifyState.h:25
Definition AnimSequenceBase.h:37
Definition Object.h:95
Definition AnimNotifyQueue.h:22
Definition AnimTypes.h:277
Definition AnimNotify.h:24
Definition Color.h:486
Definition Color.h:48
static CORE_API const FLinearColor Black
Definition Color.h:458