본문 바로가기
XR/Unreal5

프로젝트 버전 업데이트하기: from UE4 to UE5

by -솔솔- 2024. 1. 22.
반응형

업데이트하는 동기

Meta Quest Pro 로 Hand tracking 과 Gaze tracking 기능을 동시에 이용하기 위해서다.

나는 연구소에서 혼합 현실을 통한 햅틱 원격 로봇 조작 (haptic teleoperation) 을 연구개발 해왔다. 혼합현실쪽 개발 환경은 UE 4.27 과 메타 퀘스트 2를 이용했고, 퀘스트 2를 통해 오퍼레이터의 핸드 제스쳐와 헤드 디렉션 트래킹 정보를 사용했다. 함께 연구하는 다른 연구원은 바이브 포커스 3를 통해 획들한 오퍼레이터의 게이즈 정보를 이용해서 원격 환경을 시각적으로 렌더하는 연구를 하는데, 우리 둘의 시스템을 통합하여 연구하고자 한다. 

이를 위해 두 트래킹 데이터를 동시에 획득할 수 있는 메타 퀘스트 프로를 구매했다. 퀘스트 프로를 통해 언리얼에서 두 기능을 모두 쓰려면 언리얼 엔진 5를 사용해야 하므로 프로젝트 업데이트가 요구되었다.

 

예상되는 어려움

우리 연구실이 시작되었을 때부터 모든 연구/개발은 UE4를 통해 수행되었기 때문에, 현 프로젝트에서 사용하는 모든 플러그인들을 다 UE5로 마이그레이션 해야하는게 가장 큰 어려움이다.

비쥬얼스튜디오, 컴파일러 버전과 다른 라이브러리 버전도 모두 업데이트 되어야 하기 때문에 컴파일 에러를 하나씩 해결해가며 빌드하는건 아주 성가신 일이 될 것이다.

이런 이유로 언리얼4에서 어떻게든 할 방법을 모색해보기도 했다. 퀘스트 프로의 핸드트래킹은 UE4 에서도 가능했기 때문에 게이즈 트래킹만 가능하다면 엔진 버전은 그대로 두고싶었다. UE4를 소스부터 빌드해서 메타 에스디케이를 사용해보려고 했는데 잘 안됐다. UE4는 아웃데이티드이긴 하기 때문에 앞으로를 위해서라도 버전 업데이트를 하기로 결정했다. 같은 이유로 언젠가는 ROS도 ROS2로 업데이트해야 할텐데 정말 귀찮겠군~~

 

준비하기

1. UE5를 추가로 설치했다.

2. 비쥬얼 스튜디오도 2019를 사용하고 있었는데 2022 버전으로 추가 설치했다.

3. 닷넷 프레임워크도 아웃데이티드여서 업데이트 했다.

4. 피씨 메모리도 부족해서 퇴사한 연구원들 폴더들 싹 지우는 등의 일도 했다.

 

앞으로 해야할 일

1. 손과 게이즈를 트래킹하는 샘플 프로젝트를 테스트 해서 동작은 하는지부터 확인한다. 

2. UE4에서 개발해둔 플러그인을 UE5에서 동작하도록 수정하고 테스트 한다.

3. 핸드트래킹과 헤드트래킹(게이즈 디렉션이라고 가정했던것) 을 퀘스트 프로의 핸드트래킹/게이즈트래킹으로 대체한다.

4. 다른 연구원이 다른 플러그인들을 UE5에서 컴파일 완료해주면 모두 임포트해서 인티그레이션 테스트를 한다.

 

번외로 블루프린트로 주로 개발했던 기능들을 CPP 클래스로 바꿔두는게 좋겠다. 내가 떠나더라도 다른사람이 연구개발 하기 수월하도록.

'XR > Unreal5' 카테고리의 다른 글

UE5 cpp 빈프로젝트 컴파일 에러 수정  (0) 2024.01.24

댓글