【Unity】OpenXRを使ってVR ~Vive Cosmos編~

Post : 2021/4/25 Update : 2021/4/27

今まで、UnityでVR開発をする際になんとなくこちらのSteamから出ている公式のAssetを使用していたが,OpenXRに対応する必要があったのでそのあたりのセットアップとVive Cosmosがまだオフィシャルに対応されていなかったのでそのメモ。

実装環境は

HMD対応

Unityのバージョンは2020.3.5f1、VRデバイス Vive Cosmosを使用した。

今回Sampleがビルトインレンダリングパイプラインで作られているのでテンプレートは空の3Dから作成。

Package Managerから「XR Plugin Management」と「OpenXR Plugin」を追加。

入れると「新しいinput Systemも使用するため切り替えてもいいでかと聞かれるので」Yesを選択後,自動で再起動がかかる。

次にProject SettingsのXR Plug-in ManagementからOpenXRを有効にするとエラーが出る。

赤いエラーマークをクリックすると問題のある箇所が表示されてFix Allを押すと自動で解決してくれる。(便利 !!!)

とりあえず、動くかを確認するため再びPackageManagerのOpenXR PluginからSamplesのControllerをimport

Assets/Samples/OpenXR Plugin 1.0.3/ControllerからCotrollerSampleを実行すると

ここに動画

コントローラー対応

OpenXR Plugin 1.0.3では現状Vive Cosmosのコントローラー用のProfileが用意されていないのでVIVE Comunuty ForumからPackageをインストールする。

PackageManagerのAdd packageから先ほど落としてきたtgzファイル追加。

XR Plug-in Management > OpenXR > Featuresを見るとVIVE CosomosのProfileが追加されているのでViveCosmosのSupportにチェックを入れて実行。

無事動きました。

開発者目線では規格が統一されてくれるといろんなデバイスに対応しやすくなるのでありがたいですね