This document is about: QUANTUM 2
SWITCH TO

Rotation

개요

AIRotation은 FPS 게임의 복잡해 보이는 동작을 시뮬레이션하는 데 사용되는 컴포넌트입니다. 기본적인 목표는 플레이어가 1인칭 뷰(예: 킬 카메라 또는 리플레이)에서 AI 에이전트의 플레이 스타일을 볼 때에도 해당 에이전트의 룩 동작을 기반으로 즉시 인식하지 못하도록 실제 룩 동작을 에뮬레이트하는 것입니다.

물리 스프링 모델은 회전을 구동하고 인간과 같은 행동을 만드는 데 사용됩니다. AIRotation 업데이트는 애니메이션 상태 내에서 호출됩니다. 스프링 모델은 성능 효율적입니다. Quantum에서 고정된 델타 시간 덕분에 스프링 파라미터는 시뮬레이션 시작 시 한 번만 계산되고 회전 업데이트는 몇 가지 곱셈으로만 이루어집니다. 스프링 설정을 조정하면 편안한 모바일 회전부터 PC 플레이어의 하드코어 회전까지 다양한 모양 동작이 발생합니다. AIConfig에서 AIRotation 관련 설정을 조정할 수 있습니다.

실행 흐름

AIRotation 동작의 실행 흐름은 다음과 같습니다.

  1. 대상 회전이 현재 회전 유형에 따라 선택됩니다.
  2. 목표 회전은 분산 매개변수 및 검색 동작의 한계 내에서 무작위화됩니다.
  3. 목표 회전은 모든 틱마다 스프링 모델에 공급되며, 그러면 해당 틱에 대해 수행할 실제 회전이 반환됩니다.
  4. 목표 회전이 주기적으로 재계산되므로 동일한 정적 대상을 장시간 바라보더라도 외관이 완전히 일정하지 않습니다.

타입

몇 가지의 회전 타입이 지원됩니다:

  • Target: 블랙보드에서 Target으로 설정된 객체를 확인합니다. 속도 예측이 가능하므로 봇이 목표 속도를 기준으로 목표보다 먼저 조준합니다.
  • Forward: 이동 속도의 방향을 봅니다. 봇이 경로를 따르고 있고 PredictForwardLook이 활성화되어 있는 경우, 봇은 코너를 돌기 전에 앞을 볼 수 있습니다.
  • Search: Forward와 동일하지만 에이전트는 지정된 검색 각도를 기준으로 왼쪽과 오른쪽을 봅니다.
  • Point: 블랙보드에서 FocusPoint로 설정된 포인트를 봅니다.
  • Direction: 블랙보드에서 FocusDirection으로 설정된 방향을 봅니다.
  • Destination: 블랙보드에서 Destination로 설정된 지점을 봅니다.
  • SearchDiretion: Direction 과 같지만 검색 동작이 있습니다.
Back to top