노티파이란 언리얼 엔진에서 애니메이션 시퀀스 파일을 이용해 여러 몽타주 파일을 생성할 수 있는데 이때 이 애니메이션의 특정 시점에 이벤트를
발생시키기 위해 사용하는 기능이다.
캐릭터의 칼에 맞으면 적이 히트 모션을 발생시키는 것을 구현하고자 했지만, 공격 중이 아닐때도 오버랩이 발생한다.
캐릭터의 칼 공격에 맞았을 경우 피격당하는 애니메이션을 재생하고자 했지만 위 상대방(적) 클래스의 이벤트 그래프처럼 공격중이 아니어도 히트 모션이 나오는걸 볼 수 있다.
검을 휘두루는 공격 모션 중 공격이 유효해 보이는 부분에만 히트 모션을 발생시키고 싶을 때 노티파이를 이용할 수 있다.
공격 애니메이션 몽타주에 노티파이 트랙을 삽입 후 빈 공간 우클릭을 하면 노티파이 스테이트 추가 -> 몽타주 노티파이 창을 클릭해 노티파이를 생성할 수 있다.
몽타주 노티파이는 양 옆으로 칸을 늘릴 수 있는데 이걸 공격이 유효하다고 볼 수 있는 구간(또는 원하는 이벤트 발생 시작과 끝)에 배치시킬 수 있다.
해당 애니메이션 몽타주를 플레이 하는 Play Montage가 있는 이벤트 그래프로 돌아가, Play Montage노드의 오른쪽 On Notify Begin과 On Notify End를 볼 수 있는데 이는 몽타주 노티파이 창의 시작시, 종료시를 나타낸다. 임의로 IsDamage라는 부울 변수를 만들어 몽타주 노티파이 창이 시작되면 이것을 True, 종료시 False로 설정한다.(IsDamage가 잘 바뀌는지 Print로 확인)
위와 같이 상대방(적) 클래스의 이벤트 그래프에서 칼과의 오버랩 조건에 캐릭터 클래스의 IsDamage가 True인 경우를 추가해주면
일반 상태일땐 오버랩이벤트가 발생하지않고 공격시에만 발생하는 것을 볼 수 있다. 이렇게 노티파이를 이용해 애니메이션에 여러 조건이나 상황을 만들 수 있다.
'언리얼 엔진' 카테고리의 다른 글
UE5) 적, NPC 인공지능 시스템 (0) | 2025.05.08 |
---|---|
UE5) 애니메이션 몽타주 노티파이(2) (0) | 2025.04.24 |
UE5) 나이아가라 시스템 (1) | 2025.03.12 |
UE5) 소켓 (0) | 2025.03.10 |
UE5) 애니메이션 몽타주 (0) | 2025.03.10 |