2017/04/11

HoloLensの開発(Unity)

今回はUnityを使ってHoloLensでシンプルなCubeオブジェクトを表示するアプリをビルドしてみましょう。参考にするのは

https://docs.microsoft.com/ja-jp/windows/mixed-reality/develop/unity/tutorials

になります。
Microsoftの上記のドキュメントをしっかり読んでもいいですが、私のようにイライラしてしまうといけないのでCubeを出すのに必要な部分を抜き出して手順を下に説明してみます。

まず、HoloLensの仕様を見て確認しないでください。HoloLensなしでも開発できます。ただし、HoloLensがない場合はWindows “Pro”が必要です(できればWindows 10)
Windows “Home”ではHoloLensのエミュレーターが動きません。では、早速始めましょう。


1. Unityで新しいプロジェクトを作成してください。


2. キャメラのセットアップ。Main Camera を選択してインスペクターで:

  1. Positionを(0,0,0)にしてください
  2. Background Typeを”Solid Color”へ
  3. BackgroundをRGB(0,0,0)にして「黒」
  4. Near Clip Planeを0.85に

3. プロジェクト設定

  1. メニューバーの「Edit > Project Settings > Quality」を選択します
    ・シャドウテクスチャのLODドロップダウンからFastestを選択

  2. メニューバーの「Edit > Project Settings > Player」のWindows StoreタブのOther Settingsで
    ・ Virtual Reality Supportedをチェック
    ・Virtual Reality SDKsのリストにWindows Holographicが入っているを確認


4. ホログラムを作成

  1. Cubeでもシーンに入れて
  2. Cubeを選択された状態でインスペクターでPositionを(0,0,2)にしたらオブジェクトがユーザーのスタート位置から2m前にあるように見えます
  3. CubeのScaleも(1,1,1)だったら1mのCubeが見えますのでもうちょっと小さくしましょう(0.25,0.25,0.25)にしたら、25㎝のCubeになります。
  4. シーンを保存

5. UnityからHoloLensにテスト (HoloLens必須)

  1. HoloLensのストアからHolographic Remoting Playerをインストールして、起動するとIPが表示され、待機状態になります
  2. Unityのメニュー「Window > Holographic Emulation」を選択
  3. Emulation ModeをNoneからRemote to Deviceへ
  4. Remote MachineでさっきのHoloLensのIPアドレスを入力
  5. Connectをクリック
  6. Connection Statusが緑のConnectedに変わったら、UnityのPlayボタンでテストできます

6. Visual Studioからのテスト(HoloLensが有っても無くてもOKです!)

  1. Unityのメニューバーから「File > Build Settings」を選択

  2. Add Open Scenesにクリック

  3. PlatformのリストからWindows Storeを選択し、Switch Platformをクリック

  4. SDKをUniversal 10にする

  5. Target DeviceをHololensに

  6. UWP Build TypeをD3Dに

  7. UWP SDKをLatest Installedに

  8. Unity C# Projectsをチェック

  9. Buildをクリック

  10. エクスプローラーで新規フォルダを作って、選んで、Select Folderボタン押して

  11. Unityが終わったらフォルダの中には「プロジェクト名」.sln が作られたはずです

  12. 「プロジェクト名」.slnを開いてトップのツールバーのTargetをDebugからReleaseにして、ARMからX86にしてください

  13. デプロイ:

    1. WIFIを使ってデプロイ: ・トップのツールバーのLocal MachineはRemote Machineに変更
      ・HoloLensのIPを入力
      ・ Authentication ModeはUniversal (Unencrypted Protocol)
      ・Debug > Start without debuggingをクリック

    2. USBを使ってデプロイ:
      ・ トップのツールバーのLocal MachineはDeviceに変更
      ・ Debug > Start without debuggingをクリック

    3. エミュレータを使ってデプロイ: (HoloLens不要)
      ・Deviceの隣のやじるをクリックしてドロップダウンからHoloLens Emulatorを選んで
      ・ Debug > Start without debuggingをクリック