▣ c++ AnimNotifyState를 생성합니다.
그리고 3개의 함수를 선언합니다.
virtual void NotifyBegin(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float TotalDuration) override;
virtual void NotifyTick(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation, float FrameDeltaTime) override;
virtual void NotifyEnd(USkeletalMeshComponent * MeshComp, UAnimSequenceBase * Animation) override;
▣ NotifyBegin() 은 노티파이 스테이트가 시작될 때 호출하는 함수
▣ NotifyTick() 은 NotifyBegin() 이 불린 이후부터 NotifyEnd()가 불리기 전까지 틱 간격으로 호출하는 함수
▣ NotifyEnd()는 노티파이 스테이트 구간이 끝날 때 호출하는 함수
▣ TotalDuration는 Begin부터 End까지 걸리는 시간이 TotalDuration에 저장됩니다.
▣ 애니메이션에서 AnimNotifyState를 추가하고 애니메이션을 실행하면 함수상태에 따라 호출되는 걸 확인할 수 있습니다.
▣ 함수에 매개변수 MeshComp를 사용할 때에는 조건문을 넣어줘야 합니다.
그렇지 않으면 Null인 상태에서 사용하게 되고 언리얼이 Crash가 나게 됩니다.
그리고 MeshComp에 Animinstace를 캐스팅할 때에도 조건문으로 조건을 확인 후 사용하는 예외처리 코드를 꼭 추가해야 합니다.
https://docs.unrealengine.com/4.27/ko/AnimatingObjects/SkeletalMeshAnimation/Sequences/Notifies/
'[ Unreal5 ] > - 언리얼엔진5 실습' 카테고리의 다른 글
언리얼엔진5 AnimNotify (0) | 2024.07.03 |
---|---|
언리얼엔진5 c++ Dynamic CrossHair (0) | 2024.06.26 |
언리얼엔진5 액터 병합하기 (0) | 2024.06.18 |
언리얼엔진5 Physics Door (2) | 2024.06.14 |
언리얼엔진5 c++ FOnMontageEnded(Montage종료시 호출 델리게이트) (0) | 2024.06.14 |
댓글