영어 단어로 이렇게 쓰인다.
Animation Notification (애니메이션 알림이라는 뜻.)
-> Animation Notify
-> Notify (라고 줄여서 씀.)
참고
Notify가 하는 일
애니메이션이 실행되는 동안 일정 타이밍에 이벤트를 발생시켜주도록 하는 것이다.
총을 발사하는 애니메이션에서 총을 발사하는 순간에 이펙트, 사운드 이벤트를 발생시키도록 했다.
생성하기
왼쪽의 P_Hit, WPN_SCI 노티파이는 내가 미리 만들어놨던 것이다. 오해 NO.
애니메이션이나 애니메이션 몽타주 창을 띄우고,
노티파이를 지정해주는 곳(초록색 안)에서 우클릭하면 생성할 수 있다.
같은 노티파이를 여러 번 쓰고 싶을 경우에는 스켈레톤 노티파이에서 꺼내쓰면 된다.
새 노티파이를 만들 수도 있지만,
간단하거나 자주 쓰이는 노티파이는 언리얼 엔진이 미리 만들어두었다.
이거는 따로 코딩할 필요없이 디테일 창에서 값을 설정하면 바로 동작한다.
(BP) Notify에 기능 추가하기
Anim 블루프린트에서 노드를 추가하면 된다.
나는 공격 애니메이션의 마지막에 EndCombo 노티파이를 추가했다.
EndCombo 노티파이가 발생하면, 콤보가 끊기도록 기능을 추가했다.
(C++) Notify에 기능 추가하기
위의 BP에서 구현했던 내용을 C++로 구현했다. (내용 같음. 콤보 초기화.)
Anim Instance를 상속받은 클래스에서 함수를 추가하면 된다.
노티파이 이름에 맞게 생성해야 한다.
// 헤더 파일.
UFUNCTION()
void AnimNotify_EndCombo();
// CPP 파일.
void UCPP_PlayerAnim::AnimNotify_EndCombo()
{
ComboIndex = 0;
ResetMotion();
}
해당 노티파이가 발생하면, 함수가 알아서 불린다.
언리얼에서 함수를 관리하기 때문에 UFUNCTION() 매크로를 꼭 작성해야한다.
'Unreal' 카테고리의 다른 글
[Unreal BP] AI MoveTo 사용하기 (0) | 2021.04.14 |
---|---|
[Unreal] 네비게이션 메쉬 설정하기 (Nav Mesh / Nav Link Proxy) (0) | 2021.04.12 |
[Unreal BP & C++] Trace로 탐색하기 (0) | 2021.04.01 |
[Unreal BP] 잔상 효과 만들기 (5) | 2021.03.31 |
[Unreal C++] CPP 파일 생성/삭제/경로 변경하기 (0) | 2021.03.25 |