Technical/Unreal

Unreal AI

ParkJinseok 2021. 4. 11. 12:31

Navigation Mesh

  • 네비게이션 메쉬 보는 단축키 - P

구운 내비게이션의 장단점

  • 언리얼 엔진에서 퍼포먼스가 높은 내비게이션을 만드는 일은 빠르고 간단합니다. 그냥 단일 액터만 사용해도 다수의 AI가 환경을 돌아다닐 수 있습니다. 이 메서드를 사용하는 데는 장단점이 따르지만, 엄연히 언리얼 엔진 AI 내비게이션의 기본입니다.

 

장점

단점

사전 계산된 내비게이션은 빠르고 예측 가능한 결과를 만들어 냅니다.

내비게이션 메시는 정적입니다. 일단 해당 영역이 런타임 도중에 바뀌지 않는다고 가정합니다.

정적인 오브젝트 회피는 런타임 콜리전 탐지에 드는 상당한 비용을 피할 수 있습니다.

스태틱 내비게이션 메시는 플레이어나 AI 같은 다이내믹 오브젝트 회피에는 아무런 효과도 주지 않습니다.

내비게이션 구현은 모든 AI에게 전반적으로 간단합니다.

내비게이션 메시에는 지능이 내재되어 있지 않습니다. 길찾기 알고리즘과 같은 타 시스템의 데이터에 의존합니다.

       

  • 레벨이 작을 경우 네비게이션 메쉬가 자동 업데이트하는 것이 큰 문제가 안되지만, 레벨이 클 경우 오래 걸림.

  • 네비게이션 자동 업데이트 설정 방법
    편집 > 에디터 개인 설정 > 레벨 에디터 > 기타 > 네비게이션 자동 업데이트

  • 자동 업데이트를 끌 경우 빌드 > Bulid Path를 눌러서 업데이트해줘야 함.

  • World Outliner에서 RecastNavMesh를 선택하고 Detail 패널에서 Draw Offset 값을 변경하면 네비게이션 메쉬를 표시하는 초록색을 위치를 변경할 수 있음.
    실제로 변경되는 것은 아니고 보여지는 위치만 변경하는 것임.

 

네비 모디파이어 설명

https://docs.unrealengine.com/ko/Basics/Components/Navigation/index.html</a >

 

내비게이션 컴포넌트

볼륨의 모양을 사용하여 선택된 AreaClass 를 내비메시에 적용할 수 있습니다.

docs.unrealengine.com

  • RecastNavMesh의 Details > Generation에 있는 Agent 옵션들을 이용해서 네비 메쉬의 제한 사항 (높이, 반경 등등)들을 설정할 수 있음.
    EX) Agent Height를 192로 설정하면 192cm 이하일 경우엔 네비메쉬가 적용되지 않음. 즉, AI가 지나가지 못함(작동하지 않음)

  • Project Setting > Engine > Navigation Mesh에서도 같은 옵션을 설정할 수 있음.

  • Project Setting > Engine > Navigation System > Agents에 Supported Agents에서 Agent를 여러개로 설정할 수 있음. 각 Agent들은 각각의 네비 메쉬들을 사용함.

 

 

AI Perception

https://docs.unrealengine.com/ko/InteractiveExperiences/ArtificialIntelligence/AIPerception/index.html</a >

 

AI Perception

Documents the AI Perception Component and how it is used to generate awareness for AI.

docs.unrealengine.com

 

  • 인지 기능을 만드려는 대상(주로 AI)에 AI Perception Component를 생성
  • 인지할 자극을 생성할 대상 (주로 플레이어)에 AI PerceptionStimulSource를 생성함.

 

AI Sight 옵션

 

  • Sight Radius - 대상을 인식하는 최대거리

  • Lose Sight Radius - 인식했던 대상을 놓치게 되는 최대거리

  • PeripheralVisionHalfAngleDegree - 액터의 정면 벡터 방향을 기준으로 원뿔형의 인식 반경

  • Detection by Affiliation - 아군, 적, 중립의 인식 (액터를 만들면 기본적으로 중립으로 설정 됨)

  • Age에 관련된 옵션들은 대부분 대상을 인식하고 얼마나 지났는지를 측정하게 됨.

'Technical > Unreal' 카테고리의 다른 글

Layer Blended Per Bone  (0) 2022.06.06
[4.26] NPC AI  (0) 2021.04.12
Unreal AI의 핵심 이론  (0) 2021.04.11
[4.25]구조체와 데이터테이블을 이용한 데이터 관리  (0) 2021.03.21
[4.26]Hometown NPC AI 2차  (0) 2021.03.16