언리얼 엔진 내비게이션 시스템(Unreal Engine Navigation System) 은 인공 지능 에이전트가 경로 찾기를 사용하여 레벨을 이동할 수 있게 합니다.
이 시스템은 레벨 내 콜리전 지오메트리에서 내비게이션 메시를 생성하여 메시를 타일로 분할합니다. 그 타일이 폴리곤으로 분할되고, 에이전트가 목적지로 이동할 때 사용하는 그래프를 형성합니다. 각 폴리곤에는 에이전트가 전체 비용이 가장 낮은 최적의 경로를 판정하는 데 사용할 비용이 할당됩니다.
내비게이션 시스템에는 다양한 컴포넌트와 세팅이 포함되며, 이러한 세팅으로 폴리곤에 할당되는 비용 등 내비게이션 메시의 생성 방식을 수정할 수 있습니다. 이는 에이전트가 레벨 내에서 이동하는 방식에 영향을 미칩니다. 플랫폼이나 다리 등 연속되지 않는 내비게이션 메시 영역을 연결할 수도 있습니다.
내비게이션 시스템에는 세 가지 생성 모드(Generation Modes) 가 포함됩니다. 스태틱(Static) , 다이내믹(Dynamic) , 다이내믹 모디파이어만(Dynamic Modifiers Only) 입니다. 생성 모드는 내비게이션 메시가 프로젝트에서 생성되는 방식을 제어하고 필요할 때 이용할 수 있는 다양한 옵션을 제공합니다.
또한 이 시스템은 상호 속도 장애물(Reciprocal Velocity Obstacles, RVO) 과 크라우드 우회 매니저(Detour Crowd Manager) 두 가지의 에이전트 회피 메서드를 제공합니다. 회피 메서드는 에이전트가 게임플레이 중에 다이내믹한 장애물과 다른 에이전트 주변으로 지나다닐 수 있게 합니다.
다음 가이드에서는 내비게이션 시스템의 다양한 컴포넌트와 세팅을 배우고, 이를 활용하여 프로젝트에 인터랙티브 인공 지능 에이전트를 생성하는 방법을 알아봅니다.
내비게이션 시스템 샘플 프로젝트는 여기에서 다운로드할 수 있습니다. 이 프로젝트의 샘플 레벨은 아래 가이드에서 공통으로 사용합니다.