mcpField
H
hz-xr-simulator-install-and-configure

hz-xr-simulator-install-and-configure

github.com/meta-questテスト・品質24173 回インストール5 週間前に更新
リポジトリ

hz-xr-simulator-install-and-configure について

実機のヘッドセットを使わずに Meta VR アプリをテストする開発者向けの、Meta XR Simulator のインストールと設定ガイドです。エンジン連携、入力や環境のシミュレーション、自動テストを扱い、実機での性能検証は代替できないと説明します。

主な機能

  1. 01ヘッドセット追跡とコントローラー入力のシミュレーション
  2. 02定義済みのハンドポーズを起動
  3. 03部屋と仮想境界を設定
  4. 04合成パススルー環境を提供
  5. 05CI/CD 向けのテストスクリプト作成

活用シーン

  1. 01ヘッドセットなしで VR アプリをテスト
  2. 02Unity または Unreal で操作を検証
  3. 03スクリプト入力で回帰テストを実行
  4. 04CI/CD パイプラインでテストを自動化

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/meta-quest/agentic-tools --skill hz-xr-simulator-install-and-configure

インストール後、Claude Code で/hz-xr-simulator-install-and-configureを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
configuration.md
installation.md
testing-workflows.md

詳細

Meta XR Simulator のインストールと設定

このスキルを使用する場面

  • 物理ヘッドセットを接続せずに Meta VR アプリケーションをテストする必要がある場合
  • 毎回デバイスにデプロイせず、開発中に素早く反復したい場合
  • Meta VR アプリの自動テストが必要な CI/CD パイプラインを設定する場合
  • ハードウェアにデプロイする前に、主要な操作、UI、移動を検証したい場合

Meta XR Simulator とは

Meta XR Simulator は、開発マシン上で Meta VR 環境をシミュレートするデスクトップツールです。アプリケーションが行う OpenXR ランタイム呼び出しをインターセプトし、ヘッドセットのトラッキング、コントローラー入力、ハンドトラッキング、環境データをシミュレートすることで、エンジンのエディター内またはスタンドアロンのデスクトップビルドとして、VR/MR アプリケーションを直接実行してテストできます。

シミュレーターは Meta VR ハードウェアの性能を再現するものではありません。デスクトップの GPU と CPU で動作します。目的は機能テストであり、性能プロファイリングではありません。

対応プラットフォーム

プラットフォームサポートレベル
Windows 10/11(64-bit)完全サポート
macOS限定的なサポート

対応アプリの種類

  • Unity:Meta XR SDK(com.meta.xr.sdk.core および関連パッケージ)経由
  • Unreal Engine:Meta XR Plugin(旧称 Oculus VR Plugin)経由
  • Meta XR Simulator をアクティブな OpenXR ランタイムとして使用する ネイティブ OpenXR アプリケーション

主な機能

  • ヘッドセットトラッキングのシミュレーション:マウスとキーボードで頭部の位置と回転を操作します。ヘッドセットを装着せずに仮想シーン内を移動できます。
  • コントローラー入力のシミュレーション:キーボードのキーを Quest Touch コントローラーのボタン、サムスティック、トリガーに割り当てます。物理コントローラーを持っているかのように操作をテストできます。
  • ハンドトラッキングのシミュレーション:定義済みのハンドポーズやジェスチャーシーケンスを呼び出します。実際のハンドトラッキングなしで、ピンチ、グラブ、ポーク、カスタムジェスチャーをテストできます。
  • ルーム設定とガーディアンのシミュレーション:設定可能な部屋の寸法、家具の配置、ガーディアン境界を使って仮想プレイスペースを定義します。境界を考慮した動作をテストできます。
  • パススルーのシミュレーション:複合現実アプリケーションのテスト用に、合成パススルーカメラ映像を提供します。シーン理解と平面検出のロジックを検証できます。
  • スクリプト化可能なテストシナリオ:入力シーケンスを自動化し、セッションを記録して再生し、回帰テストのために CI/CD と統合できます。

クイックスタート

  1. Meta Quest Developer Hub(MQDH)の[Tools]から XR Simulator をダウンロードするか、Meta の開発者向けダウンロードページからダウンロードするか、CLI で metavr tools install xrsim を実行して直接入手します。
  2. Windows ではインストーラーを実行し、macOS ではアーカイブを展開して、インストールと設定を行います。
  3. エンジンで XR Simulator を有効にします:
    • Unity:[Edit]>[Project Settings]>[XR Plug-in Management]を開き、Meta XR Simulator をアクティブなランタイムとして有効にします。
    • Unreal:[Project Settings]>[Plugins]>[Meta XR]を開き、XR Simulator オプションを有効にします。
    • ネイティブ OpenXR:Meta XR Simulator をアクティブな OpenXR ランタイムとして設定し、デスクトップ OpenXR ビルドを起動します。
  4. エディターで Play を押します。アプリケーションはヘッドセットを接続しなくてもシミュレーター内で実行されます。

詳しい手順は、インストールガイドを参照してください。

シミュレーターをインストールしてプロジェクトに統合した後、hz-xr-simulator-control を使用して、シミュレーターの起動、ランタイム状態の確認、シミュレートするデバイスや入力の設定変更、レイヤーの管理、コンポジター出力の記録を行います。

操作の概要

操作入力
周囲を見るマウスの右ボタンを押しながらマウスを動かす
前進/後退/左/右に移動W / S / A / D
上/下に移動E / Q
コントローラーボタンをシミュレートする割り当てられたキーボードのキー(設定を参照)
ハンドポーズを呼び出す数字キーまたは設定したショートカット

入力の割り当てについて詳しくは、設定ガイドを参照してください。

テストワークフロー

シミュレーターでは、次のような複数のテストパターンに対応しています。

  • インタラクティブテスト:シーンを手動で操作して、インタラクションをテストします
  • 自動テスト:回帰テスト用の入力シーケンスをスクリプト化します
  • CI/CD 統合:自動化パイプラインでヘッドレスのシミュレータービルドを実行します

詳しいワークフローについては、テストワークフローを参照してください。

注意点

Meta XR Simulator のセットアップと使用において、よくある問題を紹介します。

  • OpenXR ランタイムの競合 -- 別の OpenXR ランタイムがシステムの既定として設定されている場合(SteamVR、Windows Mixed Reality、Oculus PC app)、シミュレーターはアプリの OpenXR 呼び出しをインターセプトしません。Meta XR Simulator を、システム全体またはエンジンごとにアクティブな OpenXR ランタイムとして設定する必要があります。Windows では、HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenXR\1\ActiveRuntime を確認して、アクティブなランタイムを確認してください。
  • Unity XR Plug-in Management に関する混乱 -- Unity で XR Plug-in Management の「Meta XR Simulator」を有効にしても、「Oculus」や「OpenXR」のローダーは自動的に無効になりません。複数のローダーが有効な場合、Unity が誤ったローダーを選択する可能性があります。シミュレーターを有効にする前に、他のすべての XR ローダーを無効にしてください。
  • シミュレーターで動作してもデバイスと同等とは限らない -- シミュレーターは、デスクトップ用ドライバーを使用してデスクトップ GPU でレンダリングします。デスクトップでは問題なくコンパイルできるシェーダーでも、Quest の Adreno GPU では失敗したり、動作が異なったりする場合があります。「シミュレーターで動作する」ことを「デバイスで動作する」ことと同じだと見なさないでください。
  • ハンドトラッキングのポーズは事前定義されており、連続的ではない -- シミュレーターでは連続的な指のトラッキングではなく、キーボードショートカットで呼び出す離散的なハンドポーズを使用します。そのため、細かなピンチ距離のしきい値、把持時の物理挙動、ジェスチャー認識の品質はテストできません。ハンドトラッキングの検証には実機を使用してください。
  • パススルーは合成環境であり、カメラベースではない -- シミュレーターはパススルーのテスト用に合成環境を提供します。シーン理解の結果(平面、メッシュ、セマンティックラベル)は設定された部屋に基づいており、実際のセンサーデータには基づきません。反射面、透明なオブジェクト、低照度環境などのエッジケースは再現されません。
  • 温度やパフォーマンスのプロファイリングには非対応 -- シミュレーターでは、デバイスの熱によるスロットリング、CPU/GPU の周波数スケーリング、メモリー負荷の挙動を再現できません。シミュレーターでのパフォーマンステストは、実機のパフォーマンス検証には意味がありません。
  • ファイアウォールやアンチウイルスによる干渉 -- 一部の企業向けアンチウイルスソフトウェアは、シミュレーターのローカル IPC をブロックします。シミュレーターが接続直後に切断される場合や、XR セッションを開始できない場合は、シミュレーターの実行ファイルに対するファイアウォールのルールを確認してください。
  • macOS のサポートは限定的 -- macOS では、一部の機能のみ利用できます。コントローラーのシミュレーションには対応していますが、ハンドトラッキング、パススルー、部屋のセットアップには完全には対応していません。シミュレーターのすべての機能を利用するには Windows を使用してください。

制限事項

  • GPU のパフォーマンスプロファイリングには非対応:デスクトップ GPU の特性は、デバイスのモバイル GPU とは異なります。フレームタイミング、シェーダーのパフォーマンス、フィルレートはデバイスの動作と一致しません。
  • 実際のセンサーデータは使用しない:IMU、カメラ、深度センサーのデータは合成されます。トラッキングのエッジケースは再現されない場合があります。
  • API の動作に違いがある:一部のプラットフォーム API(システムキーボード、ソーシャル機能、IAP など)は、シミュレーターでモックデータまたはスタブデータを返します。
  • 触覚フィードバックには非対応:シミュレーターではコントローラーの触覚を感じることはできません。
  • 熱によるスロットリングには非対応:デバイスの熱管理の挙動はシミュレーションされません。
  • レンダリングに違いがある:解像度、フォービエイテッドレンダリング、ディスプレイのリフレッシュレートは Meta VR ハードウェアと一致しません。

提出またはリリースの前に、必ず Meta VR の実機で最終検証を行ってください。

参考資料

コメント