본문 바로가기

언리얼 개발자

[Unreal] <Path Finding & Following> 0.Overview

 이번에는 자동 이동 쪽을 개발하면서 곤란했던 부분을 해결한 방식과 알게된 부분들을 공유해보고자 한다.

진행할 포스팅의 목차는 아래와 같다.

 

 

1. PathFinding & Following 구현

2. 비동기 PathFinding 구현

3. Spline-base PathFinding & Following 구현

4. 비동기 Spline-base PathFinding 구현

 

 

 1번[PathFinding & Following 구현]은 이미 Unreal의 AAIController 클래스에 기능이 있지만, 그 기능이 AAIController쪽에만 있으면서 여러 불편함이 있었다. 바로 생각나는 한 가지 예는 APlayerController에 의해 Possess 되어 있는 Player Character는 해당 기능을 사용할 수 없다. 이 쪽 얘기를 하면서 Dedicated Server 환경에서 캐릭터 이동의 권한이 어디에 있는지, 쉽게 말해 Role 얘기도 가볍게 들어갈 것 같다.

 

 2번[비동기 PathFinding 구현]은 말 그대로 길 찾기가 비동기로 동작하도록 기능을 설명하려 한다. 비동기 길 찾기는 수 많은 캐릭터들이 동시에 길 찾기를 요청하거나, 상대적으로 먼 거리에 대한 길 찾기가 수행될 때 게임이 멈추는 문제를 해결하기 위함이다.

 

 1,2번은 Unreal에서 제공해주는 기능들을 가져다가 쓰겠지만, 3,4번은 그렇지 않다.

3번[Spline-base PathFinding & Following]의 'Spline-base PathFinding'은 결과적으로 곡선 Path를 통해 부드러운 이동을 구현하는 것이고, Spline-base PathFinding을 비동기로 처리하는 방식을 4번에서 다루려고 한다.

 

 

 

 위 작업들이 요구하는 코드량이 좀 있기 때문에 시간이 날 때마다 작업을 하고 포스팅을 진행할 예정입니다.