본문 바로가기

공부하자/Unreal4

[Ue4] AnimNotify Branching Point Warning 원인 및 몽타주 틱 유형 정리

게임 실행 중 Branching Point 'AnimNotify' overlaps with 'AnimNotify' at time의 warning이 발생했을 경우 디테일 패널의 Category -> Montage Tick Type 항목을 결정하는곳을 살펴보아야 한다.

 

Montage Tick Type이 Branching Point인데 노티파이 발동시간이 동일시간대일 경우 warning이 발생한다. 

 

 

 

몽타주 틱 유형 정리

 

몽타주 틱 유형 - 노티파이 처리 방식을 결정하는 메서드로 Queued (대기열 방식)인지 Branching Point (분기점 방식)인지 결정

 

 

Queued (대기열 방식) 와 Branching Point (분기점 방식)의 차이점

 

Queued(대기열 방식)은 비동기식인 반면, Branching Point(분기점 방식)은 동기식

특정 애니메이션의 매우 정확한 지점으로 점프를 해야 할 필요가 있을 경우라면 정밀도가 높아야 한다.

대기열 방식으로도 같은 작업을 할 수는 있지만, 그 비동기 속성으로 인해 이벤트 발동이 다른 애니메이션 프레임에서 일어날 수 있으므로, 동작에 버벅거림이나 끊김이 발생할 수 있다.

 

분기점 방식은 그 동기적 속성과 그로 인한 정밀도로 인해 대기열 방식보다 퍼포먼스 비용이 높다.

이벤트가 애니메이션 타임라인 상의 정확한 지점에 발동해야 하는 경우, 이를테면 다른 애니메이션으로 직접 점프할 때 프레임 단위로 일치해야 하는 경우에만 사용해야 한다.

한 (또는 소수점) 프레임 정도 어긋나도 괜찮은 경우, 대기열 방식을 사용하는 것이 좋다.

 

 

요약

노티파이가 정확한 시간에 발동해야 하는 경우 -> Branching Point 사용 (다른 노티파이와 발동시간이 겹치면 Warning)

노티파이가 한 프레임 정도 어긋나게 발동해도 괜찮은 경우 -> Queued 사용

 

 

참고

https://docs.unrealengine.com/4.27/ko/AnimatingObjects/SkeletalMeshAnimation/Sequences/Notifies/