スマートフォンでPC向けVRを遊ぶことができるアプリケーションであるRiftcatの「VRidge」を紹介します。
価格は14.99ユーロ(買いきり)で、たまにセールをやってたりします。無料でも使えますが、1セッションあたり10分の制限があります。動作確認するには十分な時間です。
スマホVRでPC用VRを遊ぶ
没入感はスマホVRのそれではあるのですが、既に安価なVRゴーグルを持っているのであれば、手軽にPCVR環境が試せるので悪くはないかなと思います。
右手にAtomを、左手に箱コンを
「VRidgeコントローラー」という、スマートフォンを3DoF対応のコントローラーとして扱えるようになるアプリがあります。(520円)
UnihertzのAtomなんかだといい感じのサイズ感なので、どのボタンも無理なく押しにいけます。
3DoFなので、VRChatなんかは自由がきかなくて厳しいですが、ちょっと手を動かす程度ならできます。2台使えば両手が使えます。頑張ればVRCのカメラも使えますが、超大変なのでやめておきましょう。
また、VRidgeコントローラーのみでは移動やメニュー操作に無理がありすぎるので、Xboxのコントローラーなどを接続してそちらをメインに利用するのが無難かと思います。
Oculus Questで実行する
スマートフォンだけではなく、Oculus Quest上で実行することで、ワイヤレスの手軽さそのままにPCVRも遊べます。
こちらはQuest側がしっかりとしたハードウェアであることもあり、没入感は非常に高いです。
Questと接続する際はちゃんとネイティブのフレームレートに切り替わります。日本語化されていますし、難しい設定もほぼないです。
接続方法はスマートフォンと同様ですが、Questを開発者モードにしてapkを流し込まないといけないのでちょっと面倒です。
それ以外は特に迷うこともないので、Quest側にインストールさえできればあとは簡単ですね。
SteamVRを実行した際、たまに地面に埋まっていたり空高く飛んでいたりするので、そういうときはSteam側でルームスケールの設定をやりなおしておきましょう。
Ryzen 5 3600/GTX1070のマシンを無線LANルーターのWG2600HP3に有線接続し、そこから5GHzのWi-Fiで5m離れたOculusQuestとやり取りをしており、ビットレートは18Mbps程度に設定してみました。じっくりと見なければ画質についても特に問題はなさそうです。
VRidgeでは50Mbpsまでビットレートを上げることができますが、環境によっては高くしすぎないほうが良さそうです。
5GhzのWi-Fiで接続するのはもちろんですが、25Mbps程度あれば十分(1440p 60fpsの場合)であり、50Mbpsを超える設定は無駄にデータ量が大きいばかりで画質の面ではほとんど効果がありません。(VRidgeの設定ガイドより)
そればかりか、ノイズやラグが発生しやすくなって没入感を損ねやすくなります。

50Mbpsでのストリーミング。伝送が追いつかず、ノイズが発生してしまっている。
高品質設定なのに映像が乱れたりガビガビとしてたりしているのなら、ビットレートを下げましょう。恐らく高すぎて伝送が追いついてません。無線LANルーターの設定を詰めるか、HEVCでのエンコードを用いてビットレートをケチる抑えるのも良いでしょう。
Oculus Questに使われているSnapdragon 835では、HEVC等のHWデコードに対応していますが、何事も程々にしておくことをおすすめします。
5GHz帯Wi-Fiのマルチキャスト伝送速度を48Mbpsぐらいまで上げてみるなど、無線の設定を見直したり、その他色々と弄っていたら50Mbpsでも安定して動くようになったので試しに設定してみました。木目のテクスチャをじっと見ながら調節をしていたところ、30Mbpsあたりからほぼ分からない感じでした。安定しないようであれば下げてみようと思います。
(無線LANルーターが至近距離だからいいものの、マルチキャスト伝送速度を無闇に上げると設定値を維持できない端末が接続できなくなる?そうなので、お手持ちの端末ともご相談を。え?うち?リビングから外へは電波届かないからこれでええねん。)
Questは解像度が2880×1600となっていたので、vridge.cfgの一番下の方にあるVR.Resolutionの値を変更して2560×1440から2880×1600へ変更してみました。(ペンタイルだけどまぁ。)
トラッキングの予想も値を大きくするとエラーとチラつきが発生するとあったので、60msから思い切って1msにしてみましたが正直違いは分からないです……。(思いっきり暴れまわると違うのかな???)
で、有線接続であるOculusLinkでの見え方と、2880×1660@50MbpsのVRidgeとで何度か比較してみましたが、正直違いが分かりませんでした。SteamVRのスーパーサンプリングを200%に設定し、「VR Vision Test Lab」でOculusLinkとVRidgeとで見比べてもみましたが、どちらも小さい文字がチラチラとしてLv.12が読めるかなぁ?Lv.10すら怪しいなぁ……と、期待値であるLv.16とは程遠い結果になりました。
見え方に違いはなく、ぼやけてもいないんですが、もしかするとこれは自分の目の都合かなぁと。Quest側でスクリーンショット撮ろうにも1024pxになってしまうので比較のしようがないです。あ、スマホ宛に飛ばしたのでやればいいな。
スマートフォン宛でビットレート別比較
HTC U12+宛にストリーミングしたものをスクリーンショットして比較してみました。実機で実解像度でのスクショが撮れないので、OculusLinkは比較対象外です。悔しい。
ワールドはNekoroさん制作の「Reading room Apartment」です。ゆったりできていいですよねここ。
今回は入ってすぐのところにある看板の、ピンクの枠で囲ったあたりを比較してみます。
VRidgeの設定は、
- 解像度2880×1600
- 60FPS
- ビットレート1~50Mbpsまでの10Mbps刻み
- レンダリング倍率120%(SSAA)
- NVENC/HEVC(GTX1070)
- スケール1.00
受け側のHTC U12+は
- 解像度2880×1440
- 60FPS
SteamVRは
- レンダリング解像度200%(片目あたり2444×2712)
となっています。VRidgeとSteamVRとでSSAA被ってるの良くない気もするけど……。
固定してしまうと安定してしまうので、あえて手ブレさせながらスクリーンショットを撮りました。
1Mbpsは論外として、やはり30Mbpsからほとんど違いがわからなくなってきます。40Mbpsと50Mbpsはテクスチャのディテールの差はないと言っても良いでしょう。なんとなく気になっていたカラーバンディングも改善されています。
Wing_さん制作の「VR Vision Test Lab」にも行ってみます。
こちらは20Mbpsと50Mbpsなんですが…………なるほどやはりわからん!
OculusLinkで見に行っても見え方に違いがないので、30Mbpsもあれば十分なんじゃないかなぁと思います。スマホの画面と安価なゴーグルで見ることを考慮すると、Riftcat側の言う「1440pで60fpsなら25Mbpsで十分」というのは納得がいく感じがしました。(OculusQuestは1600pで72fps)
色合いについては、バージョン2.6から改善されたそうなので、問題はないと思います。
ちなみに、デスクトップ(FHD)で見に行くとこんな感じ。(※クリックで拡大できます)
デスクトップモードでもLv.10あたりから文字が欠けてしまってなかなか読めないです。
少なくとも自分の環境ではという結果になりますが、VRChat用途であれば無線で全然大丈夫そうです。もちろん、安定性とオーディオレイテンシーを考慮すると、有線のが良いのは言うまでもないと思います。ビセバとかあるしね。
あー、そうそう。忘れてた!VRidgeはiOSでも使えますよ。
2020/05/17:Questでの設定を試したので追記。
2020/05/18:設定を比較したので追記。