スマホVRでVRChatをやる試み(2024年10月21日追記)

はじめに

諸事情によってVRゴーグルのQuest2(およびベースステーション2.0×4、VIVEトラッカー2.0×8)を失いました。

スマホや身近にあるものを代用品にして、なんとかしてPC VRを実現しようと試みた足跡を残します。

細かい設定方法については、色々なところに書かれているのでそちらを参考にしてください。

スマホをVRゴーグルにする

PS VRは持っているのですが、あからさまなVRゴーグルをかぶってどうこうするということが諸事情でできなくなっていたので、TrinusVRでごにょごにょルートの優先度は下げ、第一選択としてスマホを使うことにしました。

ハード面のゴーグル自体は一番スマホ用ゴーグルとして無難そうだったELECOMのVRG-X03BKを購入しました。

めっちゃ可もなく不可もなくという感じです。

さて、ソフト面では、VridgeやiVRyといったツールを用いることで、スマートフォンをVRゴーグルにすることができます。

自分は若干安定性が高いという評判を聞き、Vridgeを選択しました。

Vridge自身はうまく動いて、無事SteamHomeに入ることができました。

コントローラをなんとかする

JoyConをコントローラにする(その1)

調べるとJoyConをコントローラにすると使い勝手が良いようだったので、Driver4VRでJoyconをVRコントローラ化してみました。

JoyConで実現できるのが3DoF(回転や傾きのみ検知可能)であったため、腕を伸ばしたりする動作は、特定ボタンを押しながら伸ばすことで実現するといった状態で、到底まともに使える様子ではありませんでした。

※コントローラーの初期位置がおかしいという場合、たいていはVridge側の中心位置がずれているので、ゴーグル用のスマホをタップするか、PC側のソフトで指定したショートカットキーで修正すれば治ります。

また、3DoF分はJoyConで、ハンドトラッキングはWebカメラによる機械学習情報を参照させることで6DoF(回転・傾き・移動)を実現しようとしましたが、JoyConはドリフトし手は変な方向を向き、そもそもの手の位置が意味不明な場所にエミュレートされてしまい、全然思い通りにいかずうまくいきませんでした。

特にVRChatのメニュー画面操作は絶望的な難易度でした。まだJoyCon単体の3DoFの方がまともに操作できます。

スマホをコントローラにする

VridgeにはVridgeコントローラというアプリを用いることで余ったスマホをコントローラにする機能があります。

ちょうど余ったスマホが3台あったので、画面用とコントローラ用2つに割り当ててみました。

スマホは(機種によるとは思いますが)JoyConよりも高いジャイロ機能を持っているので、3DoFコントローラとしては非常に安定していました。ただ、JoyConと異なりDriver4VRのハンドトラッキングと混ぜて6DoFにするということはできなさそうでした。

JoyConをコントローラにする(その2)

出でよ!Kinect!!!!!!!!

Webカメラでのトラッキングはうまくいかなかったので、皆おなじみの深度カメラKinectの出番がやってきました。

クソ箱は買ったことがなかったのであまり仕様は知らないのですが、Kinectには旧世代のXbox 360用のKinect v1と、新世代(といっても古い)のXbox One用のKinect v2があります。(厳密にはHololensのv3とAzure Kinectのv4もある)

Kinect v1はUSB2.0でそのままXbox 360につなぐ仕様だったようなので、特に不都合なくPCに接続できるようですが、Kinect v2を購入する場合は注意が必要です。

Kinect v2のXbox Oneへの接続には独自端子を採用しており、PC(や後継機のXbox One S/X)で使うためには独自端子からUSB3.0に変換するアダプターが必要になってきます。Microsoft純正アダプターはディスコンになったので、買ったKinectに付属していなかったら、怪しい中華企業のこれとか買っておけばよいです。

さて、結局v1とv2どちらにするかについては、フルトラ用途で使っているレビューを見たところ、Kinect v1とv2で、トラッキング性能は大差ないよと言っている人もいれば安定感が違うという人もいたので、カタログスペックも考慮してv2を選択しました。メルカリぽちー

Kinect Skeltonをハンドトラッキングとヘッドトラッキングに設定します。

Kinectがあれば、ヘッドトラッキングもやってくれるので、3DoFだったVRゴーグルも6DoFになりました。(スマホのARCoreを使って一応6DoFにできるっぽいけれど、うまくいってなかった)

完全な6DoFではないものの違和感は大分減りました。

一応ハンドトラッキングもメニュー操作できなくはないレベルまでは安定し、使えなくはないレベルにはなりました。

ただ、結構視界も手も荒ぶるし、だんだんドリフトもしていくので、快適とは程遠いです。

VRゴーグル使ったことない人は、これがVR体験だとは思わないようにしてほしいです。

結局結論としては、たまにはこのVRモードでVRChatに入るのも良いけれど、普段はデスクトップモードで入ればいいやという感想になりました。

以上


2024年10月21日追記

トラッキングがあらぶりまくるから使い物にならないなと思っていたものの、同じ原理でフルトラしている人の方が安定しているような…?と思って、ボディトラッキングも設定して様子を見てみたところ部屋の端に置いていた姿見に映った自分も認識してしまっていたことがわかりました。

鏡を裏返したところ、あらぶりはずいぶんましになり、フルトラもちゃんと動きました。

適切にトラッキングするためにはKinectから十分距離を確保する必要があり、この影響で足先がたまにトラッキングロストしたりしていますが、そこそこちゃんとフルトラもでき、手の安定性も向上しメニュー操作も大分やりやすくはなりました。

デスクトップモードとVRモード7:3くらいの割合で入るかもしれません。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.