HoloLensの開発を始める

(2017-02-04)

HoloLensでのアプリケーション

https://developer.microsoft.com/en-us/windows/holographic/app_model

ある点を見るGazeと指で選択するGesture、声で入力するVoiceで操作する。

HoloLens shell では壁などにタイルを配置することでアプリケーションが起動する。

一度に動くアプリケーションは一つ。 他にアクティブなアプリケーションがあれば中断され、タイルは最後の状態のスクリーンショットになる。 タイルを削除するとプロセスが終了する。

Viewには空間全体を使うHolographic Viewと、通常のウィンドウのような2D Viewがある。

開発を始める

Unityを使ってHolographic Viewのアプリケーションを開発する。

必要なツールをインストールする。エミュレーターは空きメモリが2GB以上ないと立ち上がらない。

https://developer.microsoft.com/en-us/windows/holographic/install_the_tools

チュートリアル

https://developer.microsoft.com/en-us/windows/holographic/holograms_100

QualityのところでWindows Storeのマークがなかったら、 UnityのFile->Build SettingsからWindows Storeモジュールをダウンロードする。

https://developer.microsoft.com/en-us/windows/holographic/holograms_101e

エミュレーターはWASDキーで移動してカーソルキーで向きを変え、エンターキーで選択できる。

エミュレーターで実行した画面

エミュレーターで動かしてみる

UnityProjectを作成してHolograms 100のように設定していく。

まずはCamera。

  • Position: (0,0,0)
  • Clear Flags: Solid Color
  • Background: (0,0,0,0)
  • Clipping Planes Near: 0.85

とりあえず動くことを確認するため適当なオブジェクトを置いてビルドしてみる。

Edit->Project Settings->QualityでWindows StoreをFastestにする。

Build Settings->Windows Storeで

  • SDK: Universal: 10
  • Target device: HoloLens
  • UWP Build Type: D3D
  • Unity C# Projectにチェック

にする。

BuildSettingsにあるPlayer Settingsボタンを押して Other SettingsのVirtual Reality Supportedにチェックを入れ、 SDKsにWindows Holographicが出るのを確認する。

あとはBuild SettingsでAdd Open ScenesしてBuild。適当なディレクトリを作って選ぶ。 出力された中にVSのプロジェクトがあるのでそれを開いて、 上のところでRelease,x86,HoloLens Emulatrorにしてデバッグメニューから デバッグなしで開始する。 エミュレーターが立ち上がって置いたオブジェクトが見えたらうまくいっている。

HoloToolKitを使う

実装やビルドを楽にするやつ。上のような初期設定はやらなくていい。

準備

https://github.com/Microsoft/HoloToolkit-Unity/blob/master/GettingStarted.md

ここからunitypackageをダウンロードして UnityのAssetsメニューからインポートする。

HoloToolKitメニューができるのでConfigureする。

Main CameraとDirectional Lightを消して HoloToolkit/Input/Prefabs/HoloLensCamera.prefabと、 HoloToolkit/Input/Prefabs/Cursor/DefaultCursor.prefabを置く。

Create Emptyして”Managers”にリネームし、この中に HoloToolkit/Input/Prefabs/InputManager.prefabを入れる。

Managersの中にUI -> EventSystemを作成する。

SparitalMappingする場合は、 HoloToolkit/SpartialMapping/Prefabs/SpartialMapping.prefabをMangersに入れて Editor -> Project Settings -> PlayerのPublishing Settingsから SpartialPerceptionにチェックを入れる。

HoloToolkitメニューからBuild Window -> Build Visual Studio SLNで ビルドし、Open SLNでVisual Studioが立ち上がる。 ビルドの際にクラッシュしたらWindows Storeモジュールが入っているか確認する。

実機での実行

https://developer.microsoft.com/en-us/windows/holographic/Using_Visual_Studio.html#deploying_an_app_over_wi-fi

Visual StudioでDeviceをHoloLens EmulatorからRemote Deviceに変更する。 HoloLensのIPアドレスはSettings -> Network & Internet -> Advanced Optionで確認して、 認証モードはユニバーサルにしてデバッグなしで開始する。

PINコードを要求されるので、Settings ->Update & Security -> For developersから Developer modeをonにし、その下のPaired devicesで表示されるPINコードを入力する。

スクリーンショットの撮り方

https://developer.microsoft.com/en-us/windows/holographic/using_mixed_reality_capture

カメラで撮れる。

実機で実行した画面

Windows Device Portal

PCのブラウザからいろいろできるツール。

https://developer.microsoft.com/en-us/windows/holographic/Using_the_Windows_Device_Portal.html#mixed_reality_capture

Settings ->Update & Security -> For developersからDevice Portalをonにすると https://HoloLensのIPアドレス でアクセスできる。