Blog
HoloLens에 AR Toolkit 포팅
HoloLens Unity Project에서 Vuforia 대신 AR Toolkit 포팅하기
2020.03.26
Environment Settings
일단 왜 인지는 모르지만 그냥 해당 내용을 따라하면 잘 안된다.
다음과 같이 설정해야 한다.
- 원하는 위치에
git clone git@github.com:pyotel/HoloLensARToolKit.git
- Unity Hub를 통해 새로운 3D 프로젝트를 만든다. 버전은
Unity 2018.3.1.f1
- Unity Hub의
설치
탭으로 들어가2018.3.1.f1
버전의 모듈 추가를 한다.Visual Studio 2017
과Universal Windows Platform Build Support
를 체크하고 다운받는다.- 프로젝트를 열고, clone한 repo의
ARToolKitUWP.unitypackage
를 프로젝트에 모두 임포트한다.- 또한 clone한 repo의
HoloLensARSample
폴더, 즉 이곳에 위치한 파일들 중.gitignore
와readme.md
를 제외한 모든 폴더를 복사한다.- 그 후, 새로 만든 프로젝트가 위치한 폴더를 열고, 5에서 복사한 폴더를 붙혀넣기 한다. 만약 4에서 임포트가 정상적으로 되었다면 22개의 파일이 중복된다고 나올 것이다. 그럼 덮어쓰기를 누른다.
- 다시 Unity Editor로 돌아오면, 6에서 붙혀넣기한 파일들의 임포트 작업이 진행된다.
- 상단 패널에서
Edit > Project Settings > Player
클릭- 중간에 마이크로소프트 아이콘을 클릭해
Universal Windows Platform Settings
로 들어간다.Publishing Settings
클릭하고, 하단에 내용이 아래와 같은지 확인- 이번에는
XR Settings
로 이동, 아래와 같이 설정 ! 참고 !> 11번을 진행하지 않으면 다음과 같이 창모드로 빌드되는 현상이 발생함- 준비는 끝났음. 에디터에서
Sample/HoloLensARToolKitCube.unity
를 불러온다.File > Build Settings
클릭 후Add Open Scenes
버튼 클릭, Platform을Universal Windows Plartform
으로 변경 후 빌드한다. 빌드 설정은 아래와 같이 해준다.- 빌드가 완료되면 해당 폴더에 들어가서 *.sln 파일을 누릅니다.
- Visual Studio로 열어준 다음, 탑 툴바에서 Debug에서 Release로 바꿉니다.
- 옆의 항목을 ARM에서 x86으로 바꿔줍니다.
- HoloLens를 개발 PC와 USB로 연결합니다.
- 대상을 로컬 컴퓨터에서 Device로 바꿔줍니다.
- Debug > Start without debugging 을 눌러줍니다.
- 성공!
(손이 큐브의 마커 이미지를 조금 가려져서 그렇지 실제로는 매우 잘 찾음)
일단은 예제 Cube Detection을 불러온 모습.
잘 동작하는 모습을 보여준다.
Problem
일단 잘 되긴 한다. 프레임도 잘 나오고 나름 좋은듯.
그러나 발견한 큰 문제점 2가지가 있다.
- AR ToolKit이 PC환경에서 동작하지 않음. 결과를 보려면 빌드 후 확인해야함
- Offset이 심한편인듯. 멀리서 물체를 볼 수록 해당 Offset이 심해짐
Future work
- PC 에디터상에서도 바로 확인이 가능하도록 AR ToolKit 라이브러리 수정
- Tracking을 하지 않고, 인식 하면 소환한 다음 더이상 찾지 않도록 수정