Mixed Reality 250
UWPの持つ柔軟性により、複数のデバイスにまたがったアプリケーションが簡単に作成できます。この柔軟性により、各デバイスの持つ強みを活かした体験を創ることができます。このチュートリアルでは、HoloLensとWindows Mixed Reality Immersive Headsetsの両方で実行される基本的な共有体験について説明します。このコンテンツは、もともとワシントン州シアトルで開催されたMicrosoft Build 2017で配信されました。
このチュートリアルで行うこと
UNETを使用してネットワークを設定する
前提条件
- Windows 10 PC
- PC上で動作するXboxコントローラ (Amazon CAPTCHA)
(Unityのセキュリティ設定も変更する必要があります。)
dhero.hatenablog.com
プロジェクトファイル
- プロジェクトファイル (https://github.com/Microsoft/MixedReality250/archive/master.zip)
- Unity Mixed Reality Technical Preview (MRTP) (https://developer.microsoft.com/en-us/windows/mixed-reality/install_the_tools)
環境構築
- Window 10 Creators Update
https://www.microsoft.com/software-download/windows10
- Visual Studio 2017
http://dev.windows.com/downloads
https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewSDK
- Unity Mixed Reality Technical Preview (推奨はUnity2017.2 beta11以降です。それ以下のバージョンではHoloLens用の環境とImmersive用のUnity環境が異なります。)
https://unity3d.com/jp/unity/beta
- Holographic Template (DirectXでの開発者用) ※今回は必要ありません
https://go.microsoft.com/fwlink/?linkid=852626
- Graphics driversの更新
https://developer.microsoft.com/en-us/windows/mixed-reality/updating_your_gpu_driver
第一章 Holo World
目標
シンプルなプロジェクトで開発環境の準備ができているのかを確認する
ステップ
- Unityを開く
- 開くを選択
- プロジェクトファイルを展開した場所に移動する
- 「フォルダの選択」をクリック
- Unityが最初にプロジェクトを処理するには少々時間がかかります
- UnityでMixed Realityが有効になっているかを確認する
- ビルド設定ダイアログ(Ctrl + Shift + Bまたはファイル>ビルド設定...)を開きます。
- Windows Storeを選択し、Switch Platformをクリックします
- プレーヤーの設定を選択します。
右のインスペクタで、[その他の設定]を展開します- 右のインスペクタで、[XR Settings]を展開します
- Virtual Realityのボックスをチェックしてください
- Windows Mixed RealityはVirtual Reality SDKでなければなりません
- シーンを作成する
- HierarchyでMain Cameraを右クリックし、Deleteを選択します。
- HoloToolkit>Input>PrefabsからMixedRealityCameraParentをHierarchyにドラッグ
- Hologramsをシーンに追加する
- AppPrefabsのSkyboxをScene Viewにドラッグ
- AppPrefabsのManagersをHierarchyにドラッグ
- AppPrefabsのIslandをHierarchyにドラッグ
- SaveとBuild
- Save (Control+S または File > Save Scene)
- これは新しいシーンのため、名前を付ける必要があります。
名前は特に問題ではありませんがSharedMixedRealityとします
- Visual StudioにExportする
※ 現在、Unity2017.2の既知の問題として以上の設定ではビルドができないようです。 beta8までを使っている場合に起きるエラーです。
(C# Project のチェックを外すとビルドはできます)
- ファイルエクスプローラが開くので、新しくAppというフォルダを作成します (HoloLens、Immersiveの両方のアプリを作る場合は、フォルダを分けてください。例)HoloLensApp, ImmersiveAppなど)
- Appフォルダを1回押します
- フォルダを選択を押します
- ビルドとコンパイルを待ちます
- ファイルエクスプローラが開くので、Appフォルダを開きます
- SharedMixedReality.slnをダブルクリックしてVisual Studioを起動します
コードを理解する
プロジェクトで、Assets\HoloToolkit\Input\Scripts\Utilitiesをダブルクリックし、MixedRealityCameraManager.cs を開いてください。
void Start() { if (HolographicSettings.IsDisplayOpaque) { //TrueならImmersiveHMDの設定を適応 ApplySettingsForOpaqueDisplay(); } else { //FalseならHoloLensの設定を適応 ApplySettingsForTransparentDisplay(); } }
概要:MixedRealityCameraManager.csはデバイスに応じてクオリティレベルとBackgound設定を適応する簡単なスクリプトです。重要な点はHolographicSettings.IsDisplayOpaqueであり,これはデバイスがHoloLensかImmersiveHMDかを判定します。(IsDisplayOpaqueはHoloLensならfalse,immersiveならtrueを返します)