WMR ハードウェアとソフトウェア要件
WMR 入力とインタラクションの概念

WMR クイックスタートガイド

WMR (Windows Mixed Reality) アプリケーションはユニバーサル Windows アプリケーションで、他の Windows ストアアプリケーション と同じ一般的なガイドラインに従います。開発環境は Visual Studio 2017 で、追加の SDK インストールは必要ありません (Visual Studio は必要な SDK をインストールします)。

必要なツールのインストール

Windows Mixed Realityアプリケーションを開発する前に、PC とヘッドセットに多くのツールをインストールする必要があります。以下のツールがその例です。

Windows Mixed Reality アプリケーション (HoloLens と没入型ヘッドセットの両方) を開発するのに必要なすべてのツールを確実にインストールするには、Microsoft のドキュメントの ツールのインストール の手順を参照してください。

Windows Mixed Reality の開発に関する詳細は、Microsoft の WMR ドキュメント を参照してください。

必要なツールをインストールしたら、下の説明に従って Unity のプロジェクトを設定し、Windows Mixed Reality デバイスに公開してください。

プロジェクトの設定

Windows Mixed Reality の Unity プロジェクトは、他のプラットフォームの Unity プロジェクトと非常によく似ていますが、気を付けるべき例外がいくつかあります。Windows Mixed Reality 機能を完全にサポートするには、カメラ、パフォーマンス、公開の設定を以下で説明するように変更する必要があります。

カメラ設定

HMD の位置を追跡するために使用するカメラの TagMainCamera に設定するようにしてください。これを確認するには、使用したいカメラを選択し、Inspector ウィンドウの Tag ドロップダウンを確認してください。Unity は自動的にシーン内のデフォルトカメラにこのタグを適用します。

HoloLens のカメラ設定
HoloLens のカメラ設定

HoloLens に対し、Main CameraClear Flags プロパティーをデフォルトの Skybox ではなく Solid Color に設定します。Background を黒 (R = 0, G = 0, B = 0, A = 0) に設定します。カメラの Transform 位置は必ず (0, 0, 0) に設定してください。

パフォーマンス設定

HoloLens の場合のみ、Edit > Project Settings に移動し、Quality を選び Fastest に設定します。これにより、パフォーマンスを最高にし、消費電力を削減します。特に、ソフトシャドウとシャドウカスケードを回避します。なぜなら、それらは、HoloLens で使用するにはあまりにも多くのリソースを必要とするからです。

HoloLens の Quality 設定
HoloLens の Quality 設定

Windows Mixed Reality アプリケーションの最適化の詳細は、Microsoft のドキュメントの Unity のパフォーマンスに関する推奨事項 を参照してください。

公開設定

Windows Mixed Reality アプリケーションの重要なシステム機能を有効にするには、Player 設定の Publishing Settings セクションに移動し、Capabilities リストの使用したい各オプションのボックスをチェックします。

Publishing Settings セクションにあるシステム機能の設定
Publishing Settings セクションにあるシステム機能の設定

注意: Capabilities リストのすべての公開設定が Windows Mixed Reality 特有というわけではありません。詳細は、ユニバーサル Windows プラットフォームの Player 設定 を参照してください。

下の表は、Windows Mixed Reality アプリケーションを公開するための重要な機能設定を説明しています。

Capabilities 没入型ヘッドセットのサポート HoloLens
サポート
説明
InternetClient サポート サポート 外部インターネットへ接続するためのインターネットアクセスを提供します。WMR は音声認識のためにこれを必要とします。
InternetClientServer サポート サポート インターネット接続へのアクセス (インターネットからの迷惑なリクエストを含む) を提供します。アプリケーションは、ファイアウォールを通してコンピュータと情報をやりとりできます。WMR は音声認識のためにこれを必要とします。
注意: これが有効な場合は、InternetClient を使用する必要はありません。
MusicLibrary サポート 無し 音楽ライブラリやプレイリストへのアクセス (ファイルの追加、変更、削除など) を提供します。これにより、WMR アプリケーションで VideoCapture オーディオレコーディング機能を使用できます。
PicturesLibrary サポート サポート ピクチャライブラリ。ファイルの追加、変更、削除などが可能です。この機能には、ホームグループのコンピューターの画像ライブラリや、ローカルに接続されたメディアサーバー上の画像ファイルのタイプも含まれます。
VideosLibrary サポート 無し ビデオライブラリ。ファイルの追加、変更、削除などが可能です。この機能には、ホームグループのコンピューターのビデオライブラリや、ローカルに接続されたメディアサーバー上のビデオファイルのタイプも含まれます。
WebCam 無し サポート アプリケーションで PhotoCaptureVideoCapture 機能を使用できます。
Microphone サポート サポート アプリケーションで音声認識機能を使用できます。
Bluetooth サポート サポート アプリ内で Bluetooth 通信を有効にします。WMR では、Windows Mixed Reality 空間コントローラーを使用できるようにするために、これが必要です。
SpatialPerception 無し サポート アプリケーションで 空間マッピング を使用できます。

これらの機能の詳細は、Microsoft のドキュメント を参照してください。

Visual Studio ソリューションのエクスポート

プロジェクトをビルドしてテストできる状態になったら、そのプロジェクトを Visual Studio ソリューションにエクスポートします。WMR アプリケーションを展開するには、最初に Visual Studio ソリューションを Unity でビルドする必要があります。

まず、File > Build Settings に移動し Platform のリストから Universal Windows Platform を選択します。ウィンドウの下方にある Switch Platform ボタンをクリックして、Windows 用にビルドするためにエディターを設定します。

ユニバーサル Windows プラットフォームのデフォルト設定を表示する Build Settings ウィンドウ
ユニバーサル Windows プラットフォームのデフォルト設定を表示する Build Settings ウィンドウ

標準ビルドの場合、デフォルトの設定は Windows Mixed Reality の没入型ヘッドセットで正しく機能します。

HoloLens 用にビルドするには、Target Device の設定を HoloLens に変更する必要があります。

下の表は、ユニバーサル Windows プラットフォームで使用可能なビルド設定と使用方法を示しています。

設定 説明
Target Device 没入型ヘッドセットをビルドするには Any Device を選択し、HoloLens をビルドするには HoloLens を選択します。これは最適化にとって重要です。
Build Type D3D (Direct3D) または XAML から選択します。
D3D アプリケーションに XAML レイヤーがないため、XAML よりもすばやく結果が得られます。これは、3D 空間に限ってアプリケーションをビルドするため、2D XAML アプリケーションに切り替えたり、生成後にこれを変更することはできません。
XAML アプリケーションに XAML コードレイヤーを加えます。これにより、ユーザーは 3D アプリケーションから切り替えて 2D アプリケーションを開くことができます。XAML コードは生成後に変更できます。これのもっとも一般的な例は、HoloLens にタッチキーボードを使用することです。
SDK アプリケーションが使用する Windows 10 SDK のバージョンを選択します。デフォルトでは Latest installed に設定されています。
Visual Studio Version 特定のバージョンの Visual Studio を選択してソリューション (.sln) を生成します。デフォルトでは、Visual Studio 2017 がインストールされている場合に推奨される Latest installed に設定されています。
Build and Run on Build and Run ボタンをクリックするときにアプリケーションが実行されるデバイスを選択します。デフォルトでは Local Machine に設定されています。変更する必要はありません。
ノート : Build ボタンをクリックすると、Unity はこのオプションを無視します。
Copy References UnityPlayer.dll、関連する DLL、データを、Unity のインストールフォルダーから直接参照するのではなく、生成されたソリューションフォルダーにコピーできるようにします。これには余分な空き容量が必要ですが、生成されたソリューションをポータブルにすることができます (Unity がマシンにインストールされていない場合でも、ソリューションをマシンにコピーしてビルドすることができます)。
Unity C# Projects プロジェクトのスクリプトファイルを生成されたソリューションに含めることができます。この設定は Scripting Backend.NET に設定した場合にのみ可能です。
Development Build デバッグ機能を使用可能にし、ビルドしたプロジェクトをテストしデバッグできるようにします。これにより、ビルドしたプロジェクトを Unity プロファイラーに接続することができ、より詳細なデバッグログ出力などの他の開発機能が提供されます。この設定を有効にすると、Scripts Only BuildAutoconnect Profiler も使用可能になります。
Autoconnect Profiler Unity のビルトインプロファイラーが自動的にビルドに接続できるようにします。これは Development Build が有効の場合にのみ使用可能です。
Scripts Only Build プロジェクトのスクリプトのみをビルドします。これは Development Build が有効の場合にのみ使用可能です。

アプリケーションをビルドする前に、Player 設定を行い Windows Mixed Reality アプリケーションを正しくビルドします。

  1. Build Settings ウィンドウで Player Settings ボタンをクリックし、XR Settings パネルに移動します。

  2. Virtual Reality Supported を有効にします。

  3. Virtual Reality Devices リストの + ボタンをクリックし、Windows Mixed Reality を選択します。

Build Settings を設定後に、Build ボタンをクリックします。新しいフォルダーにプロジェクトをビルドし、場所を忘れないよう記録します。

Visual Studio からアプリケーションを展開するには、以下を行います。

  1. Visual Studio で、プロジェクトをビルドしたフォルダー内で生成されたソリューションファイル (.sln) を開きます。

  2. Visual Studio のメインのタスクバーで、ソリューションのターゲットプラットフォームを変更し、ソリューションを実行するデバイスを選択します。

  3. Run ボタンの右にあるドロップダウンの三角形 (緑色の三角形) をクリックすると、使用可能なデバイスのリストが表示されます。

Visual Studio から Windows Mixed Reality アプリケーションをテストして実行するには、主に 4 つのオプションがあります。

  • Local Machine
  • Remote Machine
  • Device
  • HoloLens Emulator

これらのオプションについて以下で詳しく説明します。これらのオプションすべてが、すべての WMR デバイスに機能するわけではありません。中には HoloLens や没入型ヘッドセットに特有のものもあります。

Local Machine (没入型ヘッドセットにのみ可)

Local Machine を使用すると、アプリケーションをビルドし Windows 10 PC のMixed Reality Portal にインストールできます。ビルドすると、アプリケーションは自動的に PC 上で実行され、没入型ヘッドセットを通してテストすることができます。

Mixed Reality Portal の Start メニューからいつでもアプリケーションを起動できます。

Remote Machine (HoloLens にのみ可)

Remote Machine は、展開しようとする HoloLens や他のヘッドセットの IP アドレスを入力するためのプロンプトを表示します。Remote Machine を選択して Run をクリックすると、デバイスの PIN を入力するダイアログボックスが表示されます。

PIN を取得する方法は以下のとおりです。

  1. HoloLens の電源を入れ、HoloLens Settings に移動します。

  2. For Developers タブを選択し、表示されたトグルボタンを使って Developer Mode を有効にします。

  3. Pair ボタンを選択して PIN を取得し、Visual Studio のポップアップボックスに PIN を入力します。

アプリケーションは HoloLens にリモートインストールされ、ビルド処理が完了すると自動的にデバイス上で実行します。

Device (HoloLens にのみ可)

Device を使用すると、Visual Studio プロジェクトをビルドし、USB ケーブルを通して PC に接続された HoloLens デバイスに展開します。

Run をクリックすると、Visual Studio はプロジェクトをビルドし、接続した HoloLens にアプリケーションをインストールし、ビルド処理が完了したらデバイス上で自動的に実行します。

HoloLens Emulator (HoloLens にのみ可)

HoloLens Emulator を使用すると、Visual Studio プロジェクトをビルドし、インストールした HoloLens エミュレーターでアプリケーションを実行します。このエミュレーターを使用すると、HoloLens デバイスに展開する前に、アプリケーションをテストし、ジェスチャーやその他の入力のシミュレーションを行うことができます。

生成されたソリューションにスクリプトを加える (必須ではない)

Unity C# Projects のチェックボックスをチェックすると、プロジェクトのスクリプトファイルを生成されたソリューションに加えます。これにより、Unity から再エクスポートせずにスクリプトを編集してデバッグすることができます。再エクスポートは Project Settings やコンテンツが変更された場合にのみ必要となります。この設定は、Scripting Backend.NET に設定している場合にのみ使用できます。

IL2CPP.NET スクリプティングバックエンドのどちらかをアプリケーションに使用できます。スクリプティングバックエンド を変更するには、Player 設定の Other Settings パネルに移動し、Configuration セクションで関連するバックエンドを選択します。

ILCPP の詳細は、IL2CPP のしくみ を参照してください。

Windows Mixed Reality へのビルドに関する詳細は、Microsoft のドキュメントの Unity Visual Studio ソリューションのエクスポートとビルド を参照してください。


  • 2018–03–27 編集レビュー を行ってパブリッシュされたページ

  • XR API に関する新しいコンテンツは 2017.3 に追加

WMR ハードウェアとソフトウェア要件
WMR 入力とインタラクションの概念