AI가 단순히 목표 지점까지의 최단 경로를 찾아 이동하는 것을 넘어, 이동의 방해를 받지 않거나 주지 않고 유기적으로 움직이도록 하려면 AI 회피 시스템을 구축해줘야 한다.
언리얼에서는 대표적인 AI 회피 시스템으로 두 가지를 제공한다.
RVO 회피(Reciprocal Velocity Obstacles Avoidence)와 군중 우회 회피(Defour Crowd Avoidence)이다.
RVO 회피

RVO 회피(Reciprocal Velocity Obstacles Avoidence) 시스템은 언리얼 엔진의 기본 회피 시스템이다.
RVO는 움직이는 객체들이 서로의 현재 속도와 방향을 고려하여 충돌 가능성이 가장 낮은 새로운 속도 벡터를 계산하는 알고리즘이다.
상호적(Reciprocal)이라는 의미처럼, 모든 객체가 동시에 회피를 시도하여 부드러운 움직임을 만들지만, AI들이 서로를 밀어내며 이동하기도 한다.
이미 NavMesh 기반의 길 찾기로 얻은 경로를 유지하며, 속도 및 방향 조정만으로 회피를 처리한다.
따라서 회피로인한 움직임에 따른 NavMesh 경로 재계산이 불필요하다는 장점이 있다.
또한, 회피 계산을 하는 동안에는 레벨의 장애물 및 NavMesh를 무시하기 때문에, 좁은 골목 등에서 AI가 NavMesh 영역을 잠시 벗어나서 회피한 후 다시 경로로 복귀하는 등의 유연한 움직임이 가능하다는 장점이 있다.
하지만, NavMesh 영역을 벗어나는 것은 의도치 않은 부분까지 AI가 이동할 수 있기 때문에 그다지 좋은 부분은 아니다.
군중 우회 회피

군중 우회 회피(Defour Crowd Avoidence) 시스템은 대규모 군중 시뮬레이션에 특화된 회피 시스템이다.
RVO처럼 속도 벡터를 사용하지만, 지정된 반경 내에서 경로 최적화도 함께 고려하여 회피한다.
회피 그룹을 설정하여, 같은 그룹에 속한 개체들끼리 서로 회피하도록 설정한다.
Crowd Manager를 통해 전체 군중 AI의 움직임을 효율적으로 통제하고 일관된 군중 행동을 시뮬레이션한다.
최적화를 위해서 군중 우회 회피의 품질을 설정할 수 있다. (Low, Medium, Good, High)
이 경우, 반경 내에서 계산하는 위치들의 개수나 범위 등등이 조절된다.
매스 회피
ㅁㄴㅇㄴㅁ
'📘Unreal Engine > 📝Unreal Engine' 카테고리의 다른 글
| [Unreal Engine] 스켈레탈 메시 최적화 크래시 (0) | 2026.01.17 |
|---|---|
| [Unreal Engine] 열거형의 DisplayName을 문자열로 가져오기 (0) | 2025.11.14 |
| [Unreal Engine] 동적 NavMesh 생성 (NavigationInvoker) (0) | 2025.09.18 |
| [Unreal Engine] 간단한 정찰 AI 만들기 (0) | 2025.09.10 |
| [Unreal Engine] 레벨 스트리밍, 여러 레벨 관리하기 (0) | 2025.09.04 |