[ Build Your First VR App ]
[ 개요 ]
해당 튜토리얼은 유니티를 통해 간단한 VR 앱을 빌드한다 .
해당 앱은 공을 굴려 벽에 충돌이 텍스트가 변경되는 간단한 프로젝트이다 .
[ Set Up ]
[ 01 . 오큘러스 계정에서 Organization 생성 ]
먼저 오큘러스 디벨로퍼 계정생성후 MetaQuest for Developers에서 organization을 생성해준다 .
[ 02 . 모바일 앱에서 개발자 모드 활성화 ]
모바일 앱에 오큘러스 앱을 받고 Quset와 페어링을 진행한다 .
=>오큘러스 계정에서 ORGANIZATION을 만든 다음 오큘러스 기기를 재부팅 한 후 모바일의 오큘러스 앱에 연결한다 .
=>헤드셋 설정을 들어간후 개발자 모드 옵션을 클릭후 활성화 시켜준다 .
=>기기에도 개발자 옵션이 생겼다 .
참고 : 만약 헤드셋의 6자리 코드를 찾지 못하였다면 설정 -> 시스템 -> 정보에 기기의 6자리 코드를 볼 수 있을 것이다 .
[ 03 . 유니티 에디터 ]
도큐먼트에 따르면 , 유니티 에디터의 최소 버전은 2020.3 LTS이다 . 오큘러스는 안드로이드 기반이기에
Android SDK 및 NDK 도구 및 OpenJDK 의 설치가 필요하다 .
[ 04 . 개발 및 테스트를 위한 장치 활성화 ]
일반적으로 USB 케이블을 통해 헤드셋을 연결하는게 실제 헤드셋에서 앱을 테스트 하는 기본적인 방법이다 .
또한 ADB (Android Debug Brideg)를 사용하여 Android App에 관한 테스트 및 디버깅이 가능하며 ,
Meta Quest Developer Hub를 통해 헤드셋의 연결이 가능하다 .방식은 아래 두가지가 대표적이다 .
- USB를 통한 헤드셋의 연결의 과정
헤드셋을 개발자 모드로 설정 , USB 케이블로 컴퓨터에 연결 해야 한다 .
- Meta 헤드셋을착용하고 개발에 사용할 개발자 계정에 로그인한다 .
- 헤드셋에서 설정 > 시스템 >개발자로 이동후 USB 연결 대화 상자 옵션을 킨다 . 혹은 Meta Quest 모바일앱에서 목록에서 헤드셋을 선택한 다음 개발자 모드 옵션을 킬 수도 있다 .
- USB-C 케이블을 사용하여 헤드셋을 컴퓨터에 연결하고 헤드셋을 다시 착용한다 .
- 데이터에 대한 액세스를 허용하라는 메시지가 표시되면 허용을 클릭한다.
- 연결을 확인하려면 Unity 프로젝트를 연 다음 메뉴에서 파일 > 빌드 설정 으로 이동합니다 .
- 플랫폼 목록 에서 Android 를 선택한 다음 플랫폼 전환 을 클릭합니다 . 대상 플랫폼이 이미 Android 로 설정되어 있으면 다음 단계로 건너뜁니다.
- 장치 실행 목록 에서 메타 헤드셋을 선택합니다. 목록에 메타 헤드셋이 표시되지 않으면 새로 고침 을 클릭합니다 .
- 빌드 및 실행을 클릭하여 메타 헤드셋에서 앱을 실행합니다.
- ADB (Android Debug Brideg) 디버깅 활성화
(ADB)는 헤드셋에서 앱 설치 및 디버그, 파일 복사 또는 여러 셸 명령 실행과 같은 다양한 작업을 수행할 수 있는 명령줄 유틸리티이다. Android SDK 도구 설치에 포함되어 있으며 /Android/SDK/platform-tools/폴더 안에 있다
- 장치를 USB로 연결합니다 .
- Windows에서 개발하는 경우 OEM USB 드라이버를 다운로드 한다 . macOS에서 개발하는 경우 추가 USB 드라이버가 필요하지 않으므로 3단계로 건너뜁니다.
- oculus-adb-driver-2.0 zip 파일을 압축해제 /oculus-go-adb-driver-2.0/usb_driver/폴더로 이동하여 android_winusb.inf.를 우클릭 , 설치를 누른다 .
- 컴퓨터에서 터미널을 열고 다음 명령을 실행하여 연결된 장치를 확인한다 : adb devices
참고 ) 만약 adb 명령어가 입력이 되지 않는다면 adb 환경변수가 설정이 안된 것이다 . 안드로이드 설치시 특별한 경로를 변경하지 않는다면 C:\Users\본인계정명\AppData\Local\Android\sdk\platform-tools 의 경로에 들어와 있다 .
해당 환경변수를
[내컴퓨터] - [속성] - [고급 시스템 설정] - [환경변수]에 들어가서 [시스템 변수]에서 Path클릭 후 [편집] 클릭.
변수 값 맨 뒤에 ;C:\Users\본인계정명\AppData\Local\Android\sdk\platform-tools 를 입력 후 확인을 하면 설정 끝.
확인 클릭 후,시스템 변수들 중에서 'path' 를 선택하여 팝업화면에서 %adb_path% 를 새로 작성 후 저장한다.
이후 cmd창에서 adb version이라고 입력해보면 설정이 제대로 되었는지 확인할 수 있다(Version이 출력됨).
[ 유니티 설정 ]
[ 대상 플랫폼 설정 ]
Quest 2의 대상 플랫폼은 Android이다 .
Oculus Store 또는 App Lab에 앱을 제출하려면 사용자가 Oculus Quest 헤드셋에 설치하고 실행할 수 있는
출시 준비 패키지 ( 소스 코드, 리소스, 자산, 매니페스트 파일 등을 컴파일한 APK 파일과 활성화된 경우 APK 확장 파일(OBB) ) 를 만들어야 한다 .
여튼 , 유니티의 타겟 플랫폼을 안드로이드로 전환한다 .
[ 일반 설정 ]
회사와 앱을 고유하게 식별하는 일반적인 세부정보를 추가한다 .
Player Setting - Player 에서 다음의 것들을 채워준다 .
[ 패키지 식별 설정 ]
- 패키지의 고유한 이름을 입력한다 . Occulus내에서 고유해야 한다 .
- 하단의 Version은 위에서 채운 버전과 동일하게 연동된다
- Bundel Version Code도 버전이 올라감에 따라간다 . 다른 버전보다 최신인지 확인하기 위해 내부적으로 사용된다 .
- 최소 API 수준은 Android 10.0이상을 지원해야한다 .
[ 구성 설정 ]
- Scripting Backend는 IL2CPP를 선택한다 . 이는 더 넓은 범위의 플랫폼에서 더 나은 앱 지원을 제공한다 .
- ARMv7을 해제하고 , ARM64를 선택한다 . Meta Store에서는 64비트앱만 허용되기 때문이다 .
- Install Locaiton을 Automatic으로 변경한다 . 이를 통해 외부 저장소에 앱을 설치 할 수 있지만 설치위치에 대한 기본 설정이 없음을 나타낸다 .
[ XR Management ]
Meta는 Unity의 XR 플러그인 관리 패키지를 통해 XR 지원을 간소화한다 .
몰입형 Meta Quest 앱을 구축하려면 Occulus Utiities 패키지와 함께 Occulus XR Plugin을 사용하는 것이 좋다 .
Occulus를 체크한다 .
Occulus가 아래에 생성되었을텐데 들어가 설정값을 다음으로 변경 .
[ 렌더링 설정 ]
- 사실적인 렌더링을 위해 ColorSpace를 Linear 로 설정한다 . Linear or gamma workflow
- Auto Graphics API를 체크 해제한다 . 현재 Vulcan은 실험단계이기에 지우고 OpenGLE3만 남겨둔다 .
- Multithread Rendering을 체크한다 .
[ 품질 설정 정의 ]
Edit - Project Setting - Quality로 이동한다
- Pixel Light Count는 1로 조정한다 .
- Texture Quality를 Full Res로 설정한다 .
- Anisotropic Textures 는 Per Texture로 설정한다 .
- Anti Aliasing은 4X Multi Sampling으로 설정한다
- Soft Particles를 체크 해제한다
- Realtime Reflections Probes 체크한다
- Billboards Face Camera Position을 체크한다 .
[ Android 매니페스토 파일 생성 ]
Meta Quest 앱에는 AndroidManifest.xml파일이 필요하다 .
해당 부분에 대한 도큐먼트를 체크하자 .
[ 앱 생성 ]
[ 앱 생성 ]
도큐먼트를 참고하여 앱을 생성한다 . 앱은 공이 굴러가다 벽을 치면 벽의 색이 변하며 , 텍스트가 출력되는
간단한 앱이다 .
[ 빌드 ]
[ 빌드 ]
이제 완성된 앱을 Build 할 차례이다 .
먼저 Run Device를 잡아줘야 하는데 , Refresh를 통해 새로고침을 하였을때 Oculus가 잡혀야 한다 .
이때 , 기기가 나오지 않는다면 위에서 했던 유니티 설정이 잘못된건 아닌지와 오큘러스 내에서 USB 디버깅을 허용했는지
(써서 확인 해봐야함)를 체크해보자
Buid And Run을 통해 Build를 진행해보면 앱이 잘 돌아감을 볼 수 있다 .
참고
오큘러스 Document : Building Your First VR App
Project Eli - 오큘러스 퀘스트2 첫 VR 앱 제작 및 빌드 문제 해결
'유니티 > VR' 카테고리의 다른 글
[ VR ] 오큘러스 Interaction SDK < 02 . Tutorials > - ui와 상호작용하기 (1) | 2023.04.20 |
---|---|
[ VR ] 오큘러스 Interaction SDK < 01 . Getting Started > (0) | 2023.04.19 |
[ VR ]오큘러스 빌드 하지 않고 바로 플레이 (0) | 2023.04.18 |
[ VR ] Oculus Intergration 플러그인 추가 (0) | 2023.04.18 |
[ VR ] Meta Quest Developer Hub사용하기 (0) | 2023.04.18 |