夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

OpenXRに関して自分なりに調べてみた。

本日は調査枠です。

MRTKv2.7ではOpenXRが正式にサポートされました。これによってMRTKのシーンのProfileも変える必要があるのですが、筆者はまだ理解できていないため今回OpenXRとは何か調べてまとめていきます。

〇OpenXRとは?

OpenXRはオープンソースでロイヤリティフリーのxR向けデバイスにアクセスできる規格のようです。

開発元は[クロノス・グループ]というアメリカの非営利団体(技術コンソーシアム)です。

www.khronos.org

OpenXRを用いることでマルチプラットフォームなデバイスで共通して使用できるAPIを用いることができます。

〇MRTK×OpenXR

MRTKでは最初からマルチプラットフォームでのアプリケーション開発を念頭に設計されています。

 HoloLensからWindowsMixedRealityイマーシブヘッドセット、AndroidiOS、LeapMotion、最近ではOculusQuestにも対応しました。

 このOpenXRはマルチなデバイス間で機能やコードの供用を行うための移植可能なコードを提供します。

HoloLens 2の全機能をターゲットに開発するには、OpenXR 1.0のコア機能に加えハンド・トラッキング、アイトラッキング、空間認識、SpatialAnchorなどの追加機能を可能にする、OpenXRの拡張機能を使用することになります。

 HoloLensなどのMRデバイス用に提供される[Windows Mixed Reality OpenXR Runtime]はOpenXRを用いてHoloLens 2の全機能を拡張し、設定します。

 現在対応していない機能も今後のreleaseで対応させて完全にOpenXRに寄せていくようです。

〇Unity×OpenXR

  Unity2020.3LTS版とMRTKv2.7以上が推奨されているようです。 ここでは[Mixed Reality OpenXRプラグイン]が提供されているためです。

 MRTKでは2.7以降のバージョンでOpenXRがサポートされています。

 このプラグインには、Hand/Eyeトラッキング、SpatialAnchor、HP Reverb G2コントローラなどに加え、HoloLens 2とWindows Mixed Realityヘッドセットの機能をすべて網羅するOpenXR拡張機能のサポートが含まれています。

 

〇注意点

・Unity2021.2以降ではレガシーXR、WindowsXRのサポートが終了し、OpenXRが唯一のサポートになります。

・HoloLens 1stではUnity2020以降のサポートがされておらず、HoloLens 1stをターゲットとする場合Unity2019.4LTSがサポートされていくようです。

・[AzureRemoteRendering]のサポートはUnity2020でされていないため注意が必要のようです。  

〇参考

docs.microsoft.com