げんろぐ

VRChatとパソコンのブログ

【VRChatter向け】fpsVRを利用した PCVR利用時のパフォーマンス測定方法

 

VRChat はPCの要求スペックが青天井と言われてるわけですが、みんな石油王ではないのである程度の妥協が必要だと思います。とは言っても、どのパーツをどれぐらい妥協していいのかの明確な指標はなく、すでにPCをお持ちの方は次にどのパーツを強化すべきか悩ましいと思います。

 

PCVR利用時にCPUとGPUが実際のfps にどのような影響を及ぼしてるのか測定できるツール「fpsVR」の設定方法と測定結果の見方を解説します。

 

 

 

1.設定手順

store.steampowered.com

 

fpsVRはSteamのツールです。有料のツールですので購入しインストールしてください。

 

インストールが完了したらヘッドセットを接続しsteamVRを起動してください。

一旦HMDを外し、SteamVRの下記ウィンドウ左上の[三]→「設定」の順に選択してください。

 

 

SteamVR設定の画面が開いたら、左側の「スタートアップ/シャ...」→「スタートアップオーバーレイアプリを選択」の順に選択してください。

 

小さいウィンドウが開きますので、fpsVRの項目を 「オン」にしてください。すると画面上に「STEAMVRを再起動」のボタンが出てくるので押します。


SteamVRを再起動したら、ここからはHMDを被っての操作です。SteamVRのホーム画面にいる状態で、Occlusだと左手コントローラーの「三」を押すとメニューがでてきますが、左下のあたりに [fpsVR] の表示がでているので、こちらを押してください。

 

すると、画面が切り替わりfpsVRの設定画面になります。計測結果を保存するために設定を追加します。メニュー左側の[fpsVR]→[Save Histtory] の項目で[On]を選択するとSession historyの項目に記載のパスに計測結果が保存されるようになります。

 

 

なお、ヘッドセットを使いながらパフォーマンスを確認するための表示を追加したい場合は下記の設定を行います。メニュー左側の[Overlays]→[Postion for Room-Scalse Game/Apps (if Controller is On)]の項目を選択します。

 

「Attatch to the Right Wrist 」を選択すると、右手首に表示が追加され、手の甲を顔の方向に向けるとパフォーマンス情報が表示されます。左手首が良い場合は「Attatch to the Left Wrist」を選択しましょう。

下の写真は「Attatch to the Right Wrist」の場合の表示です。

2.データの確認方法

上記の設定が終わったらあとは、いつも通りVRChatを遊ぶだけです。次回以降は特に設定は必要ありません。ゲームを終了したタイミングでパフォーマンスの測定結果が保存されます。

 

測定結果の確認のためには、エクスプローラーで上記設定のSession historyで指定されていたフォルダを開きます。すると、「fpsVR History Viewer」というショートカットがありますのでこちらを選択します。

 

すると過去の測定履歴の結果を表示する画面が現れます。

 

左下の欄には、HMDの型番やPCのハードウェア構成に加え、SteamVRのSS設定などの設定情報に加え、平均のframetime 情報が表示されています。右下の欄にはCPU,GPUの処理負荷の%の割合のグラフ、右上の欄にはframetime のグラフがあります。

 

frametimeのグラフの見方の説明の前に、frametime という単語を説明します。frametime は 画面上の1 フレームを作るための処理にかかった時間を表しています。例えば72fps を維持するには、1秒間に72回フレームを作る必要があるため、計算すると 13.8 ms 以内に 1フレームの作成を終わらないといけません。

 1 s ÷ 72 =13.9 ms 

フレームを作る処理はGPUとCPUそれぞれに役割があり、両方の処理が13.8ms 以内に終わる必要があり、いずれかの処理が13.8ms 以内に終わらなかった場合にfps が72以下になります。

 

下記のグラフを例に見てみましょう。

 

薄緑の線が、CPUの処理でのframetime ごとの割合で、青色の線が、GPUの処理でのframetimeごとの割合です。

 

グラフの盛り上がりが左に近いほど、frametimeが短い場面が多いことになります。仮に72fps を目指す場合は、13.8ms 以内に処理が終わればいいので、グラフの盛り上がりが横軸の13.8ms より左にある割合が高いほど、処理が間に合っている場面も多いことになります。

 

その基準でみると、CPU のframetime は13.8 msのラインの左側にあるため、多くの場面で処理が間に合っていることがわかります。対して、GPUのframetime はグラフの最も盛り上がっている部分が14.5 ms のあたりにあるため、72fps を維持するだけの処理が間に合っていないことがわかります。なので、このPC構成かつ、この測定を行ったときの遊び方では、CPUの性能は十分でGPUの性能が不足しているということがわかります。

 

測定結果例

これからVRChat用PCを購入しようと考えている方向けに測定結果を貼り付けます。

 

測定結果①

CPU:Corei5-12600K

GPU:RTX3060 

比較的軽めのアバターが20人ほど集まる集会系のイベント(VRCプログラマーの集い

)に行った後、大人数でバトルディスクをするイベントに参加したときの計測結果です

CPUはframetimeが明らかに足りていて、GPUは足りていない場面がかなりあったようです。

 

 

測定結果②

CPU:Corei3-12100

GPU:RTX3060 

 

内の奥さんが使ってるVRChatPCなので、どんな遊び方をしていたか詳細はわかりませんが、人が多いイベントイケメンアバター集会に参加してたそうです。GPUはほぼ常にフル稼働で、frametimeも間に合ってませんが、CPUはかなり余裕がありそうです。

下記は私の所感ですが、、、、

この結果を踏まえるとVRChat用途だとCorei5-12600KはVRChat用途だとオーバースペック気味、Corei3-12100がコスパを狙うには最適なのかもしれません。VRChatの場合、他のソフトを同時に立ち上げたりする方も多いとは思いますが、もしそういうことをあまりしないならCorei3-12100でもかなり満足度は高いかもしれません。

 

また、RTX3060はVRChat用途だと若干パワー不足のようですね。人が多くても軽めのアバターの人が集まるイベントだと80fps を維持できるので、現行のラインナップだとコスパは高いとは思いますが、、、

 

最後に 計測結果をみんなで共有しよう!

これからVRChat用PCを買いたい、スペック強化したいという人が参考にできる情報だとおもうので、計測した結果をtwitter等に計測してほしいです!

もしよければこの記事のシェアと一緒に、結果を掲載してもらえると嬉しいです!

よろしくお願いします!!!