AWSでクラウドVRChatやってみた

Abstract

Oculus QuestのVirtual Desktop (side loaded)を用いてAmazon Web ServiceのG4 instanceに接続し、VRChatにloginしてみた。 回線状況などが悪くないかぎり、会話が可能程度のレイテンシで接続できることがわかった。 なお、料金は1時間あたり多めに見積って1.5USD程度であった。 この手法をHead Mount Displayの貸与サービスとあわせることで、例として、 High-SpecなPCが自宅になくても一時的にVRを体験することが可能になると考えられる。

科学の力ってすげー!!

いまじゃ自宅に強いPCがなくてもOculus QuestからPCでのVRChatを体験することができるんだと!!

できます。お金はかかるけど。この記事は感想と環境について書いています。 この記事最後の参考文献を参照すればできるとおもいます 。

なお、環境は以下の感じです

  • iMac 5k (GPUか電源が死にかけで挙動があやしい)
  • ルーター: Aterm WG1800HP2
  • Oculus Quest 64 GB

おそらく、固定回線があって、まともな5.0GHz飛ばせるルータがあればできるとはおもいます。 PCもスペックとしてはRemote Desktopさえ動けばなんとかなるとおもいます。

加えて、用いたソフト・サービスは以下の通りです。

  • Microsoft Remote Desktop
  • Virtual Desktop (Side Loaded)
  • AWS EC2 g4dn.xlarge (設定にt3.medium) + 色々
  • persec
  • TightVNC
  • vb-audio (必要ない可能性もある)
  • Steam
  • Oculus Software

実際どうなの

通信環境さえまともであればVRChatであれば普通にプレイできるというのが私の感想です。 ほかのゲームをやる上で、レイテンシとかに関しては実際に検証しているかたがいるので参照していただきたいです。

なお、GPUはTesla T4で、わりとつよいのかVirtual Lensなどをつかってもそれなりに動いてます。 fpsは100(表示できない)〜30ぐらい。えらい集会でも問題なく動きます。 まあ回線状況が悪いときはすごいことになるので、そういうときは即あきらめたほうが良いとおもいますが。

f:id:outoz9:20200424171912p:plain
えらい集会で30人ちかくいてもわりと普通に生存できることに感動、なおQuest単体だと死ぬ

お金はどれぐらいかかるの

おおよそ1時間あたり1.5USDは越えないぐらいかなとおもいます。やっぱりData transfer outの比率が高いかなとおもいます。 3時間ちょっとやってEC2に1.19USD、Datatransferに2.53USDですね。あとEBSやSnapshotにお金がかかります。 まだデータはとりきれてないのでアレですが、結論、安くはないです。VR睡眠とかしたいならゲーミングPC買うほうが絶対良いです。

ただ、例えばOculus Questを借りて、ハイスペックPCないけどまあまあなPCと固定回線ならあるって人であれば、一時的にVRを体験できるという点では良いのではないでしょうか。 そろそろVket4もはじまるらしいので、動くかはわかんないですが……、とりあえずVket3のシブヤはちゃんと動いてました、これで人が多いとどうなるかは分かんないです。 それで飛びこめ沼!!するのであればハイスペックなPCを購入すればいいという点では、一度体験として……という形ではいいのかなと思います。 まあ何も考えずゲーミングPCとQuest買って「絶望的に合わなかった」とかだとたしかに悲惨ではあるので……。

設定における注意点とバッドノウハウ?

一応注意点とかどう動かしているかを記載します。

  • Remote Desktopで繋いでいるとDirectXがうまくうごかないらしいのでVNCとかで繋いでGPUドライバ回りの設定をする
  • Remote Desktopでログイン→画面閉じ→persecで接続→Virtual Desktopで接続→persecを切断 ってやるとまあまあラクにログインできる
  • 当然だがRemote Desktopã‚„VNC、persecで繋ぎながらVirtual Desktopを起動させるとData Transferに結構課金されるので注意
  • 毎回VRChatログインは必要
  • スクショフォルダはシンボリックリンクをD:/のどっかに貼っておくほうが気楽 わたしはdropboxに直投げしてる
  • AMIとって前のAMI消してsnapshot消して〜って毎回やってる
    • ある程度設定ができたらそのままTerminateしてしまったほうが楽な気はします
    • 時間課金なのでAMIとる時間がもったいないのではって思ってしまう面もある

参考文献

構築にあたって参考にしたページです。Google cloud Platformでもできるとおもいます、ぜひやって記事かいてみてほしいです。

suna.hateblo.jp

troches.jp

tona.hatenablog.jp