🍰
Oculus XR Plugin for Unityのメモ
versionは4.0.0
サポートされる XRプラグイン サブシステム
- ディスプレイ
- WindowsはDX11(僕のPCはDX12
- AndroidはOpenGL ES 3.0とVulkan
- インプット
- コントローラーサポート、ハプティクス、コントローラーのトラッキングとHMDの機能を提供
XR Management サポート
Oculus Pluginを利用するにあたってXR Managementとの組み合わせは必須ではないが、使った方がやりやすくはなる。
Oculus XR PluginはデフォルトでXR Managementをサポートし、組み合わせることで以下が利用できる。
- Runtime Settings:rendering modes、depth buffer sharing, Dash supportのランタイム設定を調整可能
- Lifecycle Management:アプリ初期化、シャットダウン、再開などのサブシステムライフサイクルを扱う
Windows 向けの設定
- Stereo Rendering Mode:Multi Pass または Single Pass Instanced stereo renderingモードから選択可能
- Multi Pass:右、左目にそれぞれ描画(2つのパス)。Unityは2回描画するので時間は要するがシェーダーに特に変更をすることなく利用できるシンプルな描画。
- Single Pass Instanced:カスタムシェーダの編集が必要になる。
- Shader Depth Buffer:シェーダーバッファーの有無を指定。OculusがUnity上で機能を使える用にするためにこれでUnityとOculusで共通のdepth bufferを使うかどうかを指定する。
- Dash Support:ダッシュサポートの管理。
Android 向けの設定(多いので気になる点だけ
- Stereo Rendering Mode:Multi Pass または Multiview stereo renderingモードを選択可能
- Multiview:シングルパスとほぼ同じ。ただ、グラフィックドライバーがドローコールの変換を行うことで、Unity Engineの作業を減らす。
- Low Overhead Mode:有効にするとGLESグラフィックスドライバーがvalidation codeをバイパスすることで動作が早くなる。無効にすると動作が不安定になるGLES向けの機能。
- Optimize Buffer Discards:Vulkan向けの機能で、有効にすることでデプスやカラーバッファーの利用に影響がでるので、レンダリングの効果に影響が出るかもしれない。
- Foveated Rendering Method:フォービエイテッド レンダリングを選択(機能が有効の場合
- Fixed Foveated Renderingは固定パターンを適用、Eye TrackedはQuest Proで、かつVulkanとMultiview、ARM64を使っている場合にのみサポート。
- Enable TrackingOrigin Stage Mode:有効の場合に、Tracking OriginがFloorの場合にはシステムのリセンターでTracking Originは変更されない。
Discussion