このページでは

PCVR

概要

スタンドアロン型デバイスでは、すべてのレンダリングと処理がヘッドセット自体で行われます。非スタンドアロン型デバイス(PCVR とも呼ばれます)では、すべてのレンダリングと関連処理の大部分が、物理ケーブルまたはワイヤレスでヘッドセットに接続されたコンピュータ上で行われます。

開発者にとって、PCVR ベースの環境で作業を行うことは、スタンドアロン型 VR デバイスで継続的にデプロイやテストを行うよりも、より簡単で生産性が高い場合があります。 これは、開発、テスト、デバッグ、およびプロファイリングの手法やツールが、通常のデスクトップ Windows または Linux アプリケーションとほぼ同じであるためです。VR アプリケーションは、デスクトップの画面上に何もレンダリングしない場合でも、依然として通常のデスクトップアプリケーションであることに変わりはありません。

しかし、エンドユーザーにとっては、PCVRの設定や実行は、スタンドアロンデバイスにアプリケーションを単純にインストールするよりも複雑になる可能性があります。

両方のアプローチが可能なデバイス(例えばMeta Quest 3)では、生産性を高めるためにこれらを組み合わせることが有効です。開発中は必要に応じてPCVR(あるいはMeta XR Simulator)を使用しつつ、AR機能の実装やエンドユーザーへの最終提供時には、スタンドアロン(Android)ビルドに重点を置くようにしてください。

注: スタンドアロンモードのAndroidとPCVRモードのWindowsで同じQtアプリケーションを実行した場合、完全に異なるCPU、GPU、ソフトウェアスタック上で動作することになるため、パフォーマンス面での差異が 極めて大きくなる可能性があります。パフォーマンスプロファイリングの結論は、常に適切な環境でネイティブに実行し、プラットフォーム固有のツールを使用してプロファイリングを行った上で導き出す必要があります。

入力に関しては、ヘッドセットのコントローラーからのデータは、ヘッドセット上で直接実行されるアプリケーションと同様に、OpenXR APIを介してPC上で実行されているアプリケーションに送信されます。 さらに、アプリケーションは追加の入力方法としてPCに接続された周辺機器に依存することもありますが、キーボードやマウスの入力に依存することには多くの潜在的な落とし穴があるため、この点については慎重に検討する必要があります。

その他の考慮事項

PCVR では、品質とパフォーマンスはホスト PC の性能に大きく依存しますが、ストリーミング技術や、ワイヤレスネットワークの帯域幅などの関連要因も結果に影響を与える可能性があります。これはまた、特にワイヤレスストリーミングを使用する場合、実行時や環境によって視覚体験が異なる可能性があることを意味します。

一部の機能、特にAR関連の機能については、スタンドアロン型デバイスと比較して利用できない、あるいは機能が制限される場合があります。例えば、パススルー機能を考えてみましょう。 スタンドアロンモードでは、アプリケーションや基盤となるソフトウェアスタックは、ヘッドセットのカメラ映像に容易にアクセスできます。リモートコンピュータからストリーミングする場合、パススルー処理の負荷が高くなり、PCへの追加のデータ転送量が大幅に増加する可能性があります。そのため、PCVRシステムではARや空間認識関連の機能が利用できないことが珍しくありません。

PCVRエコシステムには、OpenXRの実装や有線・無線ストリーミングを提供する複数のソリューションが存在しますが、利用可能な機能は使用するデバイスによって異なります。一部の実行環境は特定のストリーミングソリューションに紐付けられており、それぞれが提供する機能セットは異なる場合があります。

3D APIのサポート状況も様々です。一般的に、Windows上のすべてのOpenXR実装では、Direct 3D 11、Direct 3D 12、およびVulkanがサポートされていると予想されます。OpenGLのサポートは稀であり、PCVR環境でのQtによるテストは行われていません。

注: Direct 3D 11 ではマルチビューレンダリングなどの重要な機能がサポートされていないため、その使用は 推奨されません。代わりに Direct 3D 12 を使用してください。

使用する3D APIの変更方法は、Qt Quick やQt Quick の3Dアプリケーションと同様です。環境変数QSG_RHI_BACKEND を設定するか(例:d3d12 )、QQuickWindow::setGraphicsApi()を呼び出してください。

OpenXRの実装の選択

標準のKhronos OpenXRローダーでは、読み込まれる実装を変更する方法はいくつかあります:

  • 環境変数 `XR_RUNTIME_JSON` を設定します。たとえば、`XR_RUNTIME_JSON=c:\MetaXRSimulator\meta_openxr_simulator.json ` に設定すると、その後起動される `Qt Quick ` 3D XR アプリケーションが、Meta XR Simulator の OpenXR 実装を選択するようになります。
  • あるいは、レジストリを介して設定を永続化することも可能です(Windowsの場合)。以下のパスにあるActiveRuntime の値を確認または変更してください。Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenXR\1
  • 一部のストリーミングソリューションでは、設定に特定のOpenXR実装の使用を強制するオプションが用意されている場合があります。

Meta Quest 3 向けのワイヤレスストリーミングソリューション

テスト済みの構成一覧

Meta Quest 3

  • 有線接続(USB-C)、Oculus OpenXRランタイム
  • 有線接続(USB-C)、SteamVR OpenXRランタイム
  • AirLink経由のワイヤレス接続、Oculus OpenXRランタイム
  • AirLink経由の無線接続、SteamVR OpenXRランタイム
  • SteamLink経由のワイヤレス接続、SteamVR OpenXRランタイム
  • Virtual Desktop経由のワイヤレス接続、SteamVR OpenXRランタイム
  • Virtual Desktop経由のワイヤレス接続、VDXR OpenXRランタイム

その他

  • Meta XR Simulator(Windows および macOS)

参考資料

このページでは、PCVRに関するすべての詳細、設定上の問題、および可能性について網羅することはできません。ストリーミングやOpenXRの実装に関する優れた概要や入門情報については、VDXRのWikiを参照することをお勧めします。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.