MRが楽しい

MRやVRについて学習したことを書き残す

HoloLensでMR Lighting ToolsとMRTKのシーンを組み合わせて試す

本日は HoloLens の技術調査枠です。
MR Lighting ToolsとMRTKのシーンを組み合わせてみます。

前回記事の続きです。
bluebirdofoz.hatenablog.com

前回記事ではMR Lighting Tools付属のデモシーンを使ってその機能を確認しました。
今回はMRTKを用いて作成した既存のシーンにMR Lighting Toolsを追加する手順を記事にします。
f:id:bluebirdofoz:20190522094521j:plain

プロジェクトとシーンの準備

以下の記事を元にHoloLens(WindowsMR)プロジェクトを作成します。
bluebirdofoz.hatenablog.com

2019/5/22現在、MRTK 2017 の最新バージョンは 2017.4.3.0 です。
MR Lighting Toolsを利用するため、Unity 2018.3 以上の環境でシーンを作成します。
f:id:bluebirdofoz:20190522094541j:plain

シーンの準備

変化が分かりやすいように、シーンに配置した Shpere オブジェクトに MixedRealityToolkit/Standard シェーダを設定します。
Assets フォルダで右クリックから Create -> Material を選択して新規マテリアルを作成します。
f:id:bluebirdofoz:20190522094551j:plain

作成した新規マテリアルのInspectorビューを開きます。
[Shader]のプルダウンから MixedRealityToolkit -> Standard を選択します。
マテリアルを Shpere オブジェクトにドラッグして反映します。
f:id:bluebirdofoz:20190522094603j:plain

マテリアルの[Metallic]と[Smoothness]の設定値を高く設定し、マテリアルの反射率を上げます。
[Game]ウィンドウで Shpere オブジェクトが背景を反射していることを確認します。
f:id:bluebirdofoz:20190522094615j:plain

MR Lighting Toolsの設定

MR Lighting Toolsの設定を行います。
初めに MRLightingTools0.1.1.unitypackage をプロジェクトにインポートします。
f:id:bluebirdofoz:20190522094624j:plain

メニューに MixedRealityToolkit -> LightingTools の項目が追加されます。
MixedRealityToolkit -> LightingTools -> Create Light Capture Object を実行します。
f:id:bluebirdofoz:20190522094632j:plain

Hierarchy に LightCapture が追加されます。
これで MR Lighting Tools がシーンに追加されました。
f:id:bluebirdofoz:20190522094643j:plain

MR Lighting Toolsの利用には以下の3つの Capability が必要です。

PicturesLibrary:ピクチャフォルダのアクセス権限
WebCam:カメラのアクセス権限
SpatialPerception:空間マッピングのアクセス権限

メニューから Edit -> ProjectSettings から ProjectSettins ダイアログを開きます。
[Publishing Settings]の項目を開き、[Capabilities]の項目で追加が必要な Capability を設定します。
f:id:bluebirdofoz:20190522094654j:plain

合わせて BuildSettings で表示される警告メッセージを解消するため、[OtherSettings]の[ScriptingBackend]を[IL2CPP]に変更します。
f:id:bluebirdofoz:20190522094706j:plain

これで設定は完了です。
後は HoloLens 向けにプロジェクトをビルドしてインストールします。
UnityプロジェクトのビルドとHoloLensへのインストール手順については以下を参照してください。
bluebirdofoz.hatenablog.com

HoloLens上での実行

HoloLens でインストールしたアプリケーションを起動します。
アプリが現実空間全体のキャプチャを行う必要があるため、最初に空間を見渡したり歩き回ったりして空間認識を更新します。
配置された Sphere オブジェクトに現実空間の映像が映り込めば成功です。
f:id:bluebirdofoz:20190522094728j:plain