見出し画像

Vive Flow + CloudXR でSteamVRを利用する方法 ( Vive Flow を無線PCVR-HMDとして利用する )

追記

2023/06/23:トラブルシューティングを追記
(1)  FlowへインストールしたWave CloudXR Sample Clientが起動後すぐに落ちる問題について、解決方法を追記。
(2) 設定ファイルについて注意事項を追記。

はじめに

前回記事にてVive FlowをVridge(Riftcat)を使ってSteamVRを利用する方法(無線PCVR-HMDとしてViveFlowを使う方法を書いた

SteamVRでVive Flowを利用することはできたが
・画面の歪み補正の設定が難しい
・視界のブレやフレームドロップによる酔い
・内蔵6Dofの利用の煩雑さ
などがあったため、導入ハードルが高かった

今回NVIDIA CloudXRのVive Focus 3用 apk sampleを利用することでより簡易な導入でSteamVR利用ができることが分かったので、それを記載する。

どんな環境の人向けの記事?

LightHouse系列のコントローラ(ViveWand/Valve indexコントローラ+ BaseStation)を持っている人で、軽量HMDを使いたい人におすすめです

手順

[0] adb環境の構築,wo micの導入
[1] ViveFocus3用のWave CloudXR Sample ClientをViveFlowにSideload
[2] NVIDIA CloudXR SDK Serverをサーバー(PC)にインストールする
[3] ViveFlowに設定ファイルを作る
[4] SteamVRを起動してPlay!

[0] adb環境の構築,wo micの導入

上記の前回記事より
[2] Moonlight導入+Vysor利用
で、adb環境とViveFlowをPCから画面操作する環境(Vysor)を構築
[4] Wo mic(&Taskbar)導入でのFlowのマイク有効化+サウンド設定
を参照し、PCへViveFlowのマイクをPCへストリーミングできるようにする

CloudXRの機能(設定ファイルの変更)でViveFlowのマイクをPCへストリーミングすることもできるが、音質や接続安定性の面からお勧めしない

[1] ViveFocus3用のWave CloudXR Sample ClientをViveFlowにSideload

[0]で構築したadb環境を使い
PCから以下のapk( WaveCloudXRSampleClient_v1.X.apk )をViveFlowにSideloadする

[2] NVIDIA CloudXR SDK Serverをサーバー(PC)にインストールする

以下のサイトからSteamVRをストリーミングするPCに
CloudXR-Setup-v3.2.exeをダウンロード、実行してNVIDIA CloudXR SDK Serverをインストールする

CloudXR Serverとそれ以下の3つのみにチェックを入れてインストールする

[3] ViveFlowに設定ファイルを作る

① CloudXRLaunchOptions.txtをメモ帳で作成
② 上記ファイルに以下をメモ帳で書き込む
-s [ストリーミングサーバーPCのIPアドレス] -m 2.0 -f 60 -b
③ ViveFlowとPCをケーブルでつなぎ、コマンドプロンプトから、
adb push "[①のtxtファイルのpath]" /sdcard/CloudXRLaunchOptions.txt
と入力してViveFlowに設定ファイルをアップロード

設定commandの詳細は以下を参考にすること(Client と Serverそれぞれある)

[4] SteamVRを起動してPlay!

① SteamVRを起動する

・SteamVRアドオンの管理>CloudXRRemoteHMDをONにする
マイクを利用する場合は手順[0]で入れたVysorやTaskbarを用いてWoMicを起動し、PCとあらかじめ接続しておく
ヘッドセット未検出のまま、次の手順に移行

②ViveFlowを起動し、Wave CloudXR Sample Clientを実行

必ずSteamVR起動→Wave CloudXR Sample Clientを実行の順に行うこと

③しばらくするとSteamVRの画面と音声出力がViveFlowにストリーミングされる

④Lighthouse系統のコントローラを起動し、スマホコントローラの電源を切り、再度起動する

・SteamVRのコントローラ認識をスマホコントローラからLighthouse系統のコントローラへ移行するため
・スマホコントローラの電源を切り入れなおすのは、ViveFlowに出るスマホ接続切断の警告を無くすため
・ViveFlow専用3Dofコントローラを用いればもっと簡単かも

OpenVR SpaceCalibratorを用いてコントローラの位置合わせを行う
Reference - HMD(Oculus Quest(扱い))
Target - Lighthouse系統のコントローラ/トラッカー
で実行
床の位置合わせはOVRAdvancedSettingsを導入し、FixFloor等で合わせる

[参考]

おわりに

前回と比べ簡易に行うことができるようになりました。
Quest系列とLightHouse系列のデバイスの位置合わせができることが前提知識に必要ですが、LightHouse環境でコントローラを持っている人で、軽量HMDを使いたい人は試してみると良いのではないでしょうか

トラブルシューティング

[1] 設定ファイルのアップロード

[3]ViveFlowに設定ファイルを作る について
ストリーミングサーバーPCのIPアドレス
=PC のローカル IP アドレス
となります。
見つける方法はこのページを参考に

[2] サンプルクライアントapkが起動せず、即座に落ちる

・予想される原因
① ViveFlowにインストールしたWave CloudXR Sample Clientの
  ファイルアクセス許可がなされていない
② 設定ファイル(CloudXRLaunchOptions.txt)の
  IPアドレスが間違っている
③ SteamVRが起動する前
  ViveFlowのWave CloudXR Sample Clientを起動している

①については手元で再現でき、(おそらく)解決方法が見つかったので追記しました!ご確認ください。

ーー①の解決方法ーー

環境:ViveFlow
システムバージョン:2.13.625.01
・Wave SDK : 4.5.0

i. Wave CloudXR Sample Clientをアンインストール
※v1.2->v1.3にアップデート時は事前のアンインストールが必須

ii. Wave CloudXR Sample Clientをインストール

iii. Client起動前に設定ファイル(CloudXRLaunchOptions.txt)をインストール

iv. アドオン有効後にSteamVRを起動状態で、Flow側のClientを起動

v. Clientが自動的に落ちる

ⅵ. Flow側ホーム画面でファイル関係のアクセス許可のポップアップが出るので、許可する

ⅶ. Flow側ホーム画面で音声関係のアクセス許可のポップアップが出るので、同様に許可する

ⅷ. 再度アドオン有効後にSteamVRを起動状態で、Flow側のClientを起動
ーーENDーー


この記事が気に入ったらサポートをしてみませんか?