AI
개요
FPS 템플릿은 계층적 유한 상태 머신 (HFSM) 형태로 엔티티의 AI를 실행하고 입력을 생성하는 두 가지 시스템을 제공합니다.
AISystem
; 그리고ExtendedAISystem
.
이 페이지에서는 각 시스템에 대한 개요를 설명합니다. FPS 템플릿에 포함된 AI 기능에 대한 자세한 설명은 AI 섹션을 참조하세요.
AISystem
AISystem
은 FPS 템플릿에서 AI 엔티티를 실행하는 데 필요한 가장 기본적인 시스템의 예입니다. 여기에는 Update()
에서 HFSM을 실행하는 것과 엔티티 유형을 초기화하고 해제하라고 시그널을 전송하는 ISignalInitializeEntity
및 ISignalDeinitializeEntity
를 구현하는 것이 포함됩니다.
AISystem
은 모듈 완성도를 위해 FPS 템플릿에 포함되어 있지만 프레임워크에서는 사용되지 않습니다. AISystem
대신 ExtendedAISystem
을 사용하려면 SystemSetup.cs
에서 시스템을 바꾸면 됩니다.
ExtendedAISystem
보다 고급적이고 FPS 고유의 AI를 달성하기 위해 FPS 템플릿은 ExtendedAISystem
을 사용합니다. 이 시스템에는 다음과 같은 몇 가지 추가 기능이 있습니다.
NavMeshAgent
에 반응하기 위한ISignalOnNavMeshWaypointReached
- 에이전트의 체력 및 피해에 영향받는 것들에 반응하기 위한
ISignalOnHit
및ISignalWeaponFired
.
AI 에이전트는 NavMeshAgent
를 사용하여 탐색하고, 간단한 Memory
를 가지며, Sensors
를 사용하며, 특수 이동을 위해 AIAnimationStates
를 지원합니다. 이러한 기능에 대한 자세한 내용은 AI 섹션의 해당 챕터를 참조하세요.