夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

プロジェクトの作成 HoloLens2アプリのチュートリアルその②

Microsoftのドキュメント[Microsoft Docs]ではHoloLens 2の入門チュートリアルが公開されています。

ツールのインストールから詳しく掲載されているためこちらを今回勉強しながらHoloLens 2が手元にないためHoloLens 1stで動かしてみます。

 チュートリアルは以下で公開されています。

docs.microsoft.com

〇2.最初のプロジェクトとアプリケーションの作成

●概要

 ここではUnity向けに提供されている[MixedRealityToolkit]で提供されるいくつかの機能を学習しHoloLens 2用のアプリケーションを作成します。

●前提

前回の記事で紹介した適切なツールが導入されているPCが必要です。

●新規Unityプロジェクトの作成

[Unity Hub]を開き、[新規作成]を選択します。

 f:id:Holomoto-Sumire:20200309151559j:plain

Unityのバージョンを2019.2.X以上であることを確認して[テンプレート]のタイプを3Dを設定、プロジェクトの名前を付けて[作成]を選択します。

f:id:Holomoto-Sumire:20200309151911j:plain

成功するとUnityが立ち上がります。

f:id:Holomoto-Sumire:20200309153421j:plain

Windows MixedReality用にプロジェクトを構築する。

●ビルドプラットフォームの切り替え

 UnityではHoloLens以外にAndroid端末やiOS端末といったスマートフォンタブレットやWindows10PC用のアプリ等様々なプラットフォームへ向けアプリケーションを作成することができます。

 ここではHoloLensを含んだWindows MixedRealityデバイス用にプラットフォームを切り替えます。

Unity 上部メニューで、 [File] > [Build Settings...] を選択し、[Build Settings]ウィンドウを開きます。

 f:id:Holomoto-Sumire:20200309153723j:plain

 [Build Settings]ウィンドウで、 [Universal Windows Platform]を選択して、 [Switch Platform]ボタンをクリックします。

f:id:Holomoto-Sumire:20200309154046j:plain

●MixedRealityを有効化する

 [Build Settings]ウィンドウ下部の[Player Settings]を選択します。

f:id:Holomoto-Sumire:20200309155549j:plain

[Player Settings]ウィンドウで[XR Settings]タグを開き、[VirtualReality Supported]のチェックを入れ有効化します。

 また[+] アイコンをクリックし、 [Windows Mixed Reality] を選択して [Windows Mixed Reality SDK]を追加します。

f:id:Holomoto-Sumire:20200309160028j:plain

Unity で SDK の追加が完了したら、次のように XR の設定を最適化します。

・ [Depth Format] を [16-bit depth] に設定します

f:id:Holomoto-Sumire:20200309160259j:plain

・ [Enable Depth Sharing] チェックボックスをオンにします

f:id:Holomoto-Sumire:20200309160358j:plain

・[Stereo Rendering Mode]を [Single Pass Instanced]に設定します。

※シングルパスインスタンスレンダリングパス(Single Pass Instanced)とは?

MixedRealityアプリケーションでは、scene上のオブジェクトはユーザーに対して片目ごとに1回ずつ、合計2回表示されます。

従来の3D 開発と比較すると、これにより、計算する必要がある作業量が実質的に倍になります。 CPU と GPU の両方の負荷を軽減するには、Unity で最も効率的なレンダリングパスを選択することが重要になります。   シングルパスインスタンスレンダリングでは、Mixed Reality アプリ用の Unity レンダリングパイプラインが最適化されます。そのため、すべてのプロジェクトに対してこの設定を既定で有効にすることをお勧めされています。

docs.microsoft.com

●Spatial perception(空間認識)を有効化する

ここではHoloLensのSpatialMappingの機能を使用するための設定を行います。

 [Player Settings]の[Publishing Settings]を選択します。

f:id:Holomoto-Sumire:20200309161508j:plain

 [Capabilities](機能)から[Spatial perception]を見つけチェックを入れます。

 f:id:Holomoto-Sumire:20200309161757j:plain

 これによって空間認識機能が使用可能になります。

 この[Capabilities]ではアプリケーションで使用する様々な機能の使用を許可することができます。  

 記事分量が長くなってしまったので続きは次回勉強します。