HoloLens 2で OpenXR を使用して開発することも、デスクトップでイマーシブ ヘッドセットWindows Mixed Reality開発することもできます。 ヘッドセットにアクセスできない場合は、代わりに HoloLens 2 Emulator または Windows Mixed Reality シミュレーターを使用できます。
OpenXR for HoloLens 2の概要
HoloLens 2用の OpenXR アプリケーションの開発を開始するには:
手順は以上です。 OpenXR API ランタイムは、HoloLens 2 デバイスにプレインストールされており、ストアを介して自動更新を受け取ります。
すべての 拡張機能 が存在する最新の OpenXR ランタイムがあることを確認するには、HoloLens デバイスまたはエミュレーターから ストア アプリを起動します。 ストア アプリの右上にあるメニューを開き、[ ダウンロードと更新プログラム] を選択して、[ 更新プログラムの取得] を選択します。
注:
エミュレーターを使用している場合、エミュレーター イメージは起動するたびにリセットされるため、HoloLens 2 エミュレーター イメージの最新バージョンがあることを確認することをお勧めします。
Windows Mixed Reality ヘッドセットの OpenXR の概要
イマーシブ Windows Mixed Reality ヘッドセット用の OpenXR アプリケーションの開発を開始するには、
- 少なくとも 2020 年 10 月の更新プログラム (20H2) Windows 10を実行していることを確認してください。これは、Windows Mixed Realityエンド ユーザーが OpenXR アプリケーションを実行するためにサポートされている最小 OS リリースです。 以前のバージョンのWindows 10は引き続き OpenXR で動作する必要がありますが、理想的なパフォーマンスや品質がない可能性があります。 以前のバージョンのWindows 10を使用している場合は、Windows 10 Update Assistant を使用してアップグレードできます。
- Windows Mixed Reality ヘッドセットを設定するか、Windows Mixed Reality シミュレーターを有効にします。
手順は以上です。 Windows Mixed Reality OpenXR ランタイムがインストールされ、すべてのWindows Mixed Reality ユーザーに対して自動的にアクティブになります。 その後、Microsoft Store はランタイムを最新の状態に保ちます。
PC で複数の VR ヘッドセットを使用している場合は、アクティブな OpenXR ランタイムが別のベンダーのシステム ソフトウェアによって変更される可能性があることに注意してください。 Windows Mixed Reality OpenXR Runtime を再アクティブ化するには、[スタート] メニューの [Mixed Reality ポータル] を起動し、ウィンドウの上部にある [修正] を選択します。 そのボタンが見つからない場合、OpenXR ランタイムは既にアクティブです。
Windows Mixed Reality用 OpenXR ツールの入手
HoloLens 2または PC VR 用の OpenXR アプリケーションを開発している場合は、この OpenXR Tools for Windows Mixed Reality アプリが役立つ場合があります。 さまざまな OpenXR 機能のデモと、アクティブなランタイムと現在のヘッドセットに関する重要な情報を含む OpenXR ランタイム ページを提供します。
OpenXR Tools アプリを見つけてインストールするには、HoloLens 2でストア アプリに移動し、"OpenXR" を検索します。
HoloLens 2 エミュレーターを使用する場合、OpenXR Tools for Windows Mixed Realityをインストールする最も簡単な方法は、Windows デバイス ポータルを使用することです。 ポータルで[OpenXR]\(OpenXR\) ページに移動し、[ 開発者向け機能] の [ インストール ] ボタンを選択します。 これは、物理HoloLens 2デバイスでも機能します。
OpenXR API とサンプル アプリの探索
OpenXR 開発に必要なツールをまだインストールしていない場合は、必ず インストール してください。
BasicXrApp プロジェクトは、Visual Studio の Win32 および UWP HoloLens 2 プロジェクト ファイルを含む単純な OpenXR サンプルを示しています。 ソリューションには HoloLens UWP プロジェクトが含まれているため、Visual Studio にユニバーサル Windows プラットフォーム開発ワークロードをインストールして完全に開く必要があります。
Win32 プロジェクト ファイルと UWP プロジェクト ファイルは、パッケージ化と展開の違いにより別々ですが、各プロジェクト内のアプリ コードはほぼ同じです。
OpenXR API のツアーについては、Visual Studio の BasicXrApp サンプルのこの 60 分間のビデオをチェックします。 このビデオでは、OpenXR API の主要な各コンポーネントを独自のエンジンでどのように使用できるかを示し、現在の OpenXR 上に構築されているアプリケーションの一部も示しています。
OpenXR アプリの実行
OpenXR Win32 デスクトップ .EXE を構築した後は、ヘッドセットの種類に関係なく、OpenXR をサポートする任意のデスクトップ VR プラットフォーム上の VR ヘッドセットで使用できます。
OpenXR UWP アプリ パッケージをビルドした後、そのパッケージを HoloLens 2 デバイスまたは HoloLens 2 Emulator のいずれかにデプロイできます。
既存のプロジェクトでの OpenXR の使用
既存のプロジェクトで OpenXR の使用を開始するには、OpenXR ローダーを含めます。 ローダーは、デバイス上のアクティブな OpenXR ランタイムを検出し、それが実装するコア関数と拡張機能へのアクセスを提供します。
Visual Studio プロジェクトから 公式の OpenXR NuGet パッケージを参照 するか、Khronos GitHub リポジトリから 公式の OpenXR ローダー ソースを含めることができます 。 どちらの方法でも、OpenXR 1.0 のコア機能に加え、公開された KHR
、 EXT
、 MSFT
拡張機能にアクセスできます。
MSFT_preview
拡張機能も試したい場合は、Mixed Reality GitHub リポジトリからプレビューの OpenXR ヘッダーをコピーできます。
公式の OpenXR NuGet パッケージを参照する
OpenXR.Loader NuGet パッケージは、Visual Studio C++ ソリューションで事前構築済みの OpenXR ローダー .DLL を参照する最も簡単な方法です。 これにより、OpenXR 1.0 のコア機能に加え、公開された KHR
、 EXT
、 MSFT
拡張機能にアクセスできます。
OpenXR.Loader NuGet パッケージ参照を Visual Studio C++ ソリューションに追加するには:
- ソリューション エクスプローラーで、OpenXR を使用するプロジェクトを右クリックし、[NuGet パッケージの管理]を選択します。...
- [ 参照 ] タブに切り替えて、 OpenXR.Loader を検索します。
- OpenXR.Loader パッケージを選択し、右側の詳細ウィンドウで [インストール] を選択します。
- [OK] を選択して、プロジェクトへの変更を受け入れます。
- ソース ファイルに
#include <openxr/openxr.h>
を追加して、OpenXR API の使用を開始します。
OpenXR API の動作例を確認するには、BasicXrApp サンプル アプリをチェックします。
公式の OpenXR ローダー ソースを含める
ローダーを自分でビルドする場合 (たとえば、追加のローダー .DLL を回避する場合は、公式の Khronos OpenXR ローダー ソースをプロジェクトにプルできます。 これにより、OpenXR 1.0 のコア機能に加え、公開された KHR
、 EXT
、 MSFT
拡張機能にアクセスできます。
ここで作業を開始するには、 GitHub の Khronos OpenXR-SDK リポジトリの手順に従います。 プロジェクトは CMake を使用してビルドするように設定されています。MSBuild を使用している場合は、コードを独自のプロジェクトにコピーする必要があります。
プレビュー拡張機能の使用
拡張機能ロードマップに記載されているMSFT_preview
拡張機能は、フィードバックを収集するためにプレビューされている試験的なベンダー拡張機能です。 これらの拡張機能は開発者デバイス専用であり、実際の拡張機能が付属すると削除されます。
使用可能な MSFT_preview
拡張機能を試す場合は、次の手順に従ってプロジェクトを更新してください。
- 上記のいずれかの方法に従って、OpenXR ローダーをプロジェクトに統合します。
- プロジェクト内の標準の OpenXR ヘッダーを、GitHub の Mixed Reality OpenXR リポジトリのプレビュー ヘッダーに置き換えます。
ターゲット HoloLens 2またはデスクトップ PC でプレビュー拡張機能のサポートをアクティブにするには:
- すべての 拡張機能 が存在する最新の OpenXR ランタイムがあることを確認するには、ターゲット デバイスまたはエミュレーター内から ストア アプリを起動し、右上のメニューを開き、[ ダウンロードと更新プログラム ] を選択し、[ 更新プログラムの取得] を選択します。
- Microsoft Store からターゲット デバイスに OpenXR Tools for Windows Mixed Reality アプリをインストールして実行します。
- [ 設定 ] タブに移動し、[ 最新のプレビューを使用する] OpenXR ランタイムを有効にします。 これにより、プレビュー拡張機能がアクティブになっているデバイス上のプレビュー ランタイムが有効になります。
-
OpenXR Tools for Windows Mixed Reality の [OpenXR Runtime] タブに表示されているランタイム バージョンが、試してみる予定のプレビュー拡張機能の必要なバージョンと一致することを確認します。 その場合は、拡張機能 の一覧 に拡張機能が表示されます。 安定した拡張機能が使用可能になると、プレビュー拡張機能は削除されます。
これらのプレビュー拡張機能のドキュメントとそれらの使用方法のサンプルについては、Mixed Reality OpenXR リポジトリを参照してください。
トラブルシューティング
OpenXR 開発で問題が発生して実行できない場合は、トラブルシューティングのヒントをチェックしてください。