Windows Mixed Reality(WMR) 애플리케이션은 유니버설 Windows 애플리케이션으로, 다른 Windows 스토어 애플리케이션과 동일한 일반 가이드라인을 따릅니다. 개발 환경은 Visual Studio 2017이며, 추가 SDK를 설치할 필요가 없습니다(Visual Studio가 필요한 SDK를 설치함).
Windows Mixed Reality 애플리케이션을 개발하려면 다음과 같은 몇 가지 툴을 PC와 헤드셋에 설치해야 합니다.
필수 작업이 설치된 Visual Studio 2017(유니버설 Windows 플랫폼 개발 및 Unity를 통한 게임 개발).
HoloLens 에뮬레이터 및 홀로그래픽 템플릿(HoloLens 개발에만 필요함).
HoloLens와 몰입형 헤드셋 모두에 Windows Mixed Reality 애플리케이션을 개발하기 위한 필수 툴을 모두 설치하려면 툴 설치에 관한 Microsoft 문서의 지침을 따르십시오.
Windows Mixed Reality용 개발에 대한 자세한 내용은 Microsoft WMR 문서를 참조하십시오.
필수 툴을 설치한 후에는 아래의 짧은 가이드를 따라 Unity 프로젝트를 설정하고 Windows Mixed Reality 기기에 퍼블리시하십시오.
Windows Mixed Reality용 Unity 프로젝트는 다른 플랫폼의 Unity 프로젝트와 매우 유사하지만, 몇 가지 중요한 예외가 존재합니다. Windows Mixed Reality 기능을 완전히 지원하려면 다음 섹션에 설명된 대로 카메라, 성능 및 퍼블리싱 설정을 변경해야 합니다.
HMD의 포지션을 추적하는 데 사용할 카메라의 Tag 가 MainCamera 로 설정되어야 합니다. 이렇게 설정하려면 사용할 카메라를 선택하고 Inspector 창에서 Tag 드롭다운을 확인하십시오. Unity는 이 태그를 씬의 기본 카메라에 자동으로 적용합니다.
HoloLens의 경우 Main Camera 의 Clear Flags 프로퍼티를 기본 Skybox 가 아니라 Solid Color 로 설정하고, Background 컬러를 검은색(R = 0, G = 0, B = 0, A = 0)으로 설정하십시오. 또한 카메라의 Transform 포지션이 (0, 0, 0)으로 설정되었는지 확인해야 합니다.
HoloLens의 경우에만 편집(Edit) > 프로젝트 설정(Project Settings) > 품질(Quality) 에서 가장 빠름(Fastest) 품질 설정을 사용하십시오. 그러면 성능은 극대화되고 전력 소비는 감소합니다. 특히, 소프트 섀도우와 섀도우 캐스케이드는 HoloLens에서 리소스를 너무 많이 소모하기 때문에 피하는 것이 좋습니다.
Windows Mixed Reality 애플리케이션 최적화에 대한 자세한 내용은 Unity용 성능 권장사항에 대한 Microsoft 문서를 참조하십시오.
Windows Mixed Reality 애플리케이션에 대한 중요한 시스템 기능을 활성화하려면 플레이어 설정(Player Settings) > 퍼블리싱 설정(Publishing Settings) 으로 이동한 후 기능(Capabilities) 리스트에서 사용할 옵션에 대한 체크박스를 각각 선택하십시오.
참고: 기능(Capabilities) 리스트의 모든 퍼블리싱 설정이 Windows Mixed Reality에 해당되는 것은 아닙니다. 자세한 내용은 WSA 플레이어 설정을 참조하십시오.
다음 표에는 Windows Mixed Reality 애플리케이션을 퍼블리시하기 위한 중요 기능 설정이 설명되어 있습니다.
기능 설정 | 몰입형 헤드셋 지원 | HoloLens 지원 |
Description | |||
---|---|---|---|---|---|---|
InternetClient | Y | Y | 나가는 인터넷 연결을 위한 인터넷 액세스 권한을 제공합니다. WMR에서 음성 인식을 사용하기 위해 필요합니다. | |||
InternetClientServer | Y | Y | 인터넷에서 수신되는 자발적 연결을 포함하여 인터넷 액세스 권한을 제공합니다. 앱이 방화벽을 통해 컴퓨터와 정보를 주고받을 수 있습니다. WMR에서 음성 인식을 사용하기 위해 필요합니다. 참고: 이 기능이 액티브 상태인 경우 InternetClient 를 사용할 필요가 없습니다. |
|||
MusicLibrary | Y | N | 파일의 추가, 변경 또는 삭제 권한을 포함하여 음악 라이브러리 및 플레이리스트에 대한 액세스 권한을 제공합니다. 이 기능을 통해 WMR 앱에서 VideoCapture 오디오 녹음 기능을 사용할 수 있습니다. | |||
PicturesLibrary | Y | Y | 파일의 추가, 변경 또는 삭제 기능이 포함된 사진 라이브러리입니다. 또한 이 기능에는 HomeGroup 컴퓨터의 사진 라이브러리뿐만 아니라 로컬로 연결된 미디어 서버의 사진 파일 타입도 포함됩니다. | |||
VideosLibrary | Y | N | 파일의 추가, 변경 또는 삭제 기능이 포함된 비디오 라이브러리입니다. 또한 이 기능에는 HomeGroup 컴퓨터의 비디오 라이브러리뿐만 아니라 로컬로 연결된 미디어 서버의 비디오 파일 타입도 포함됩니다. | |||
WebCam | N | Y | 앱에서 PhotoCapture 및 VideoCapture __ 기능을 사용할 수 있습니다. | | Microphone| Y | Y | 앱에서 음성 인식 기능을 사용할 수 있습니다. | | Bluetooth| Y | Y | 앱에서 블루투스 커뮤니케이션을 활성화합니다. WMR에서 Windows Mixed Reality 공간 컨트롤러를 사용하기 위해 필요합니다. | | SpatialPerception__ | N | Y | 앱에서 공간 매핑을 사용할 수 있습니다. |
이 기능에 대한 자세한 내용은 Microsoft 문서를 참조하십시오.
프로젝트를 생성하고 테스트할 준비가 끝나면 프로젝트를 Visual Studio 솔루션으로 익스포트하십시오. WMR 애플리케이션을 배포하려면 먼저 Unity에서 Visual Studio 솔루션을 빌드해야 합니다.
파일(File) > 빌드 설정(Build Settings) 으로 이동한 후 플랫폼(Platform) 리스트에서 유니버설 Windows 플랫폼(Universal Windows Platform) 을 선택합니다. 그런 다음 창의 왼쪽 하단에 있는 플랫폼 전환(Switch Platform) 버튼을 클릭하여 Windows용으로 빌드할 수 있도록 에디터를 설정합니다.
스탠다드 빌드의 경우 기본 설정은 Windows Mixed Reality 몰입형 헤드셋에 대해 올바르게 동작합니다.
HoloLens용 빌드의 경우에는 Target Device 설정을 HoloLens 로 변경해야 합니다.
아래 표에는 유니버설 Windows 플랫폼에 사용할 수 있는 빌드 설정 리스트와 각 설정에 대한 사용 방법이 나와 있습니다.
설정 | 설명 | |
---|---|---|
Target Device | 몰입형 헤드셋용으로 빌드하려면 Any Device 를 선택하고 HoloLens용으로 빌드하려면 HoloLens 를 선택합니다. 이 선택은 최적화에 큰 영향을 미칩니다. | |
Build Type | D3D(Direct3D) 또는 XAML 중에서 선택합니다. | |
D3D | 앱에 XAML 레이어가 없기 때문에 XAML보다 빠르게 빌드할 수 있습니다. 이 빌드 타입은 3D 전용 공간에서 앱을 빌드하며, 생성한 후에는 2D XAML 앱으로 전환하거나 수정할 수 없습니다. | |
XAML | 앱에 XAML 코드 레이어를 추가하여 사용자가 3D 앱에서 전환하여 2D 앱을 열 수 있도록 합니다. XAML 코드는 생성 후에도 수정할 수 있습니다. 가장 일반적인 예는 HoloLens용 터치 키보드 사용입니다. | |
SDK | 앱에서 사용하는 Windows 10 SDK의 특정 버전을 선택합니다. 기본 설정은 Latest installed 입니다. | |
Visual Studio Version | 특정 버전의 Visual Studio를 선택하여 솔루션(.sln)을 생성합니다. 기본 설정은 Latest installed 로, Visual Studio 2017을 설치한 경우에 권장되는 설정입니다. | |
Build and Run on |
Build and Run 버튼을 클릭할 때 애플리케이션을 실행할 기기를 선택합니다. 기본 설정은 Local Machine 으로, 이 설정은 변경하지 않는 것이 좋습니다. 참고: Build 버튼을 클릭하는 경우 Unity는 이 옵션을 무시합니다. |
|
Copy References | UnityPlayer.dll, 관련 DLL 및 데이터를 Unity 설치 폴더에서 직접 참조하는 것이 아니라 생성된 솔루션 폴더에 복사할 수 있습니다. 이 작업에는 추가 공간이 필요하지만, 생성된 솔루션을 휴대할 수 있게 됩니다. (다른 컴퓨터에 Unity가 설치되어 있지 않아도 해당 컴퓨터에 복사하여 빌드할 수 있습니다.) | |
Unity C# Projects | 프로젝트의 스크립팅 파일을 생성된 솔루션에 포함할 수 있습니다. 이 설정은 Scripting Backend 를 .NET 으로 설정한 경우에만 사용할 수 있습니다. | |
Development Build | 디버그 기능을 잠금 해제하여 개발자들이 빌드한 프로젝트를 테스트 및 디버그할 수 있도록 허용합니다. 이 설정을 이용하면 빌드한 프로젝트를 Unity 프로파일러에 연결할 수 있게 되고, 추가 상세 디버그 로그 출력 등과 같은 기타 개발 기능을 사용할 수 있습니다. 또한 이 설정을 활성화하면 Scripts Only Build 및 Autoconnect Profiler 설정을 이용할 수 있습니다. | |
Autoconnect Profiler | Unity의 빌트인 프로파일러가 빌드에 자동으로 연결할 수 있습니다. 이 설정은 Development Build 를 활성화한 경우에만 사용할 수 있습니다. | |
Scripts Only Build | 프로젝트의 스크립트만 빌드합니다. 이 설정은 개발 빌드(Development Build) 를 활성화한 경우에만 사용할 수 있습니다. |
앱을 빌드하기 전에 플레이어 설정(Player Settings)을 구성하여 Windows Mixed Reality 애플리케이션을 올바르게 빌드해야 합니다.
빌드 설정(Build Settings) 창에서 플레이어 설정(Player Settings) > XR 설정(XR Settings) 을 클릭합니다.
가상 현실 지원(Virtual Reality Supported) 을 활성화합니다.
Virtual Reality Devices 리스트에서 + 버튼을 클릭한 다음 Windows Mixed Reality 를 선택합니다.
빌드 설정을 구성한 후 Build 버튼을 클릭합니다. 프로젝트를 새 폴더에 빌드하고 위치를 기억해 둡니다.
Visual Studio에서 앱을 배포하는 방법은 다음과 같습니다.
Visual Studio에서 프로젝트를 빌드한 폴더 안에 생성된 솔루션 파일(.sln)을 엽니다.
메인 Visual Studio 작업 막대(아래 이미지의 왼쪽에서 오른쪽으로 표시)에서 솔루션에 대한 타겟 플랫폼을 변경하고 해당 솔루션을 실행할 기기를 선택합니다.
Run 버튼(녹색 화살표로 표시)의 오른쪽에 있는 드롭다운 화살표를 클릭하면 가능한 기기 리스트가 표시됩니다.
Visual Studio에서는 다음의 네 가지 주요 옵션을 통해 Windows Mixed Reality 애플리케이션을 테스트 및 실행할 수 있습니다.
아래 섹션에서는 이러한 옵션들을 더욱 상세하게 설명합니다. 일부 옵션은 특정 WMR 기기에서 동작하지 않으며, HoloLens나 몰입형 헤드셋에만 해당되는 옵션들도 있습니다.
Local Machine 을 사용하면 Windows 10 PC에서 애플리케이션을 빌드한 후 혼합 현실 포털에 설치할 수 있습니다. 빌드된 앱은 사용 중인 PC에서 자동으로 실행되며, 몰입형 헤드셋을 통해 테스트할 수 있습니다.
혼합 현실 포털의 Start 메뉴를 통해 언제든지 애플리케이션을 다시 시작할 수 있습니다.
Remote Machine 은 배포할 HoloLens나 기타 헤드셋의 IP 주소를 입력하라는 메시지를 표시합니다. Remote Machine 을 선택한 상태에서 Run 을 클릭하면 다이얼로그가 나타나 기기에 대한 PIN을 요청합니다.
이 PIN을 얻는 방법은 다음과 같습니다.
HoloLens를 켜고 HoloLens Settings 로 이동합니다.
For Developers 탭을 선택한 후 제공되는 토글 버튼을 사용하여 Developer Mode 를 활성화합니다.
Pair 버튼을 선택하여 PIN 을 얻은 후 Visual Studio의 팝업 상자에 입력합니다.
애플리케이션이 HoloLens에 원격으로 설치되고, 빌드 프로세스가 완료되면 기기에서 자동으로 실행됩니다.
Device 를 사용하면 Visual Studio 프로젝트를 빌드한 후 USB 케이블을 통해 PC에 연결된 HoloLens 기기에 배포할 수 있습니다.
Run 을 클릭하면 Visual Studio가 프로젝트를 빌드하고, 연결된 HoloLens에 앱을 설치하고, 빌드 프로세스가 완료되면 기기에서 자동으로 실행합니다.
HoloLens Emulator 를 사용하면 Visual Studio 프로젝트를 빌드한 후 설치된 HoloLens 에뮬레이터에서 앱을 실행할 수 있습니다. 이 에뮬레이터를 통해 PC에서 앱을 테스트하고 제스처 및 기타 입력을 시뮬레이션한 후 HoloLens 기기에 배포할 수 있습니다.
Unity C# 프로젝트(Unity C# Projects) 체크박스를 선택하여 프로젝트의 스크립팅 파일을 생성된 솔루션에 포함하십시오. 이렇게 하면 Unity에서 다시 익스포트하지 않고도 스크립트를 편집 및 디버그할 수 있습니다. 프로젝트 설정 또는 콘텐츠가 변경된 경우에만 다시 익스포트해야 합니다. 이 설정은 스크립팅 백엔드(Scripting Backend) 를 .NET 으로 설정한 경우에만 사용할 수 있습니다.
IL2CPP 또는 .NET 스크립팅 백엔드를 애플리케이션에 사용할 수 있습니다. 스크립팅 백엔드(Scripting Backend) 를 변경하려면 플레이어 설정(Player Settings) > 기타 설정(Other Settings) 으로 이동한 후 설정(Configuration) 섹션에서 해당 백엔드를 선택하십시오.
ILCPP에 대한 자세한 정보는 IL2CCP 작동 방식에 대한 Unity 참고 문서를 참조하십시오.
Windows Mixed Reality 기기에 빌드하는 자세한 방법은 Unity Visual Studio 솔루션의 익스포트 및 빌드에 대한 Microsoft 문서를 참조하십시오.
2018–03–27 편집 리뷰를 거쳐 페이지 게시됨
2017.3에서 XR API 변경 사항에 대한 새로운 콘텐츠 추가됨