This document is about: QUANTUM 2
SWITCH TO

애니메이션 상태

개요

애니메이션 상태는 HFSM의 결정에 따라 이동 및 회전을 실행합니다. 즉, HFSM은 무엇 이 필요한 작업(예: X 지점으로 이동, 적 Y를 살펴보기)을 결정하고 애니메이션 상태는 방법 을 통해 취해진 결정을 달성합니다.

애니메이션 상태는 에셋입니다. AI 에이전트는 AIConfig에서 여러 가지 다른 애니메이션 상태를 구성할 수 있지만 한 번에 하나의 활성 애니메이션 상태만 구성할 수 있습니다.

애니메이션 상태 간 전환은 AI 컴포넌트에서 수행되며 현재 특정 NavMesh 링크를 통과하는 것과 관련이 있습니다. 기존 스위칭 메커니즘을 새로 추가하거나 확장할 수 있습니다(부분 메서드 구현에 대해서 AI.User.cs 참조).

애니메이션 상태 이동

기본 애니메이션 상태는 이동입니다. 이름에서 알 수 있듯이 NavMesh에서 에이전트를 이동하는 데 사용되며 표준 회전 동작을 수행합니다. 이 에셋에 대해 대시 점프를 켤 수 있으므로 특정 상황에서 에이전트가 걷기 대신 점프를 수행하여 이동 속도를 높일 수 있습니다.

Jump 애니메이션 상태

NavMesh 에이전트가 Jump 링크를 통과할 때 Jump 애니메이션 상태가 활성화되며, NavMesh Links 섹션에서 점프 링크에 대한 자세한 내용을 확인할 수 있습니다. 이 애니메이션 상태는 에이전트에서 필요로 하는 특수한 이동 동작이 필요합니다.

  1. 기하 구조의 가장자리를 향해 실행됩니다(현재 에이전트 위치와 링크 시작 사이의 일정한 거리를 가정함).
  2. 점프 그리고,
  3. 반대쪽으로 향합니다.

에이전트가 착륙한 후 Jump 애니메이션 상태가 종료되고 기본(Move) 애니메이션 상태로 전환됩니다.

JumpPad 애니메이션 상태

Jump 상태와 유사하지만 이번에는 에이전트가 다음을 수행해야 합니다.

  1. 미리 정의된 위치인 JumpPad에 도달
  2. JumpPad가 활성화될 때까지 대기
  3. JumpPad 목적지를 향해 밀기

이를 통해 AI는 긴 JumpPad 점프를 수행할 수 있습니다.

Drop 애니메이션 상태

드롭 링크를 통과할 때 활성화되는 간단한 애니메이션 상태 - NavMesh 링크 섹션에서 드롭 링크에 대한 자세한 내용을 확인할 수 있습니다.

가능한 확장 예제

다음은 FPS 템플릿에서 구현되지 않은 애니메이션 상태의 몇 가지 예입니다:

  • Fly: 드론 및 기타 지상 요원들은 NavMesh 경로 찾기를 참조용으로 사용할 수 있지만, 이동 동작은 다릅니다. 즉, 커팅, 천장 기준의 상하 이동 등
  • RocketJump: 로켓 점프를 성공적으로 수행하기 위해 실행되어야 하는 매우 구체적인 행동입니다.
  • WallJump: NavMesh가 아닌 사용자 정의 데이터 집합(예: 벽에 배치된 점)을 사용하여 이동을 계산하는 특정 유형의 적.
Back to top