まずは基本的なベンチマークで性能を見る
いきなりVRゲームでのパフォーマンスを見る前に、VRシステムがなくてもVRでのパフォーマンスを推し量れる「VRMark」のスコアーをチェックしよう。ここでは通常のデスクトップモード(=VIVE Proは未接続)で計測した。さらにスコアーだけだと分かりづらい部分があるため、テスト中の平均fpsも合わせて比較する。
スコアーを見るとVIVEを想定したOrange Roomでは、RX 5700以上では頭打ちになっている。RTX 2080の方がベンチマークのスコアーは良いが、実際にフレームレートを見ると今回一番性能が低いRX 590ですら平均173fps、RX 5700〜Radeon VIIでは平均250fps弱出ており、VRMarkが推奨するターゲットフレームレート109fps(この数値なら無印VIVEで快適に動くであろう、という数値)を余裕で越えている。もちろんスコアーが高ければより重いVRコンテンツにも対抗できる、という考え方もあるが、このVRMarkの結果から読み取れるのはVIVE相当のコンテンツであれば、RX 5700より上はほぼ変わらない、ということだ。
同様にCyan Roomにおいてもターゲットフレームレート89fpsはどのGPUでも通過している。RTX 2080 FEが飛び抜けて良い結果を出しているが、これはCyan RoomのシェーダーがTuringアーキテクチャーと相性が良いためだ。
3段階のスケーリングで検証
では本題のVIVE Proでの検証に入りたい。SteamVRがVRをレンダリングする際に用いる内部解像度、すなわち「スーパーサンプリング(以下、SS)」は、50%/100%/200%の3段階とした。
VIVE Pro環境でSS100%設定にすれば、片目あたり2016×2240ドットでレンダリングされる。VIVE Proの物理解像度(1440×1600ドット)のおおよそ1.4倍の解像度でレンダリングするのだから負荷も高いが、1.4倍でレンダリングするとレンズ中心付近での解像感がほぼドット等倍になるメリットがある。
逆にSS50%時では、片目あたり1424×1584ドットとなり、物理解像度とほぼ一致する。等倍表示相当のパフォーマンスが見たいならSS50%の結果を、よりクオリティーの高いVR環境を目指しているならSS200%の結果を重視するとよいだろう。
SteamVRのフレームタイムでチェック
では実際のVRゲームを動かしての検証に入ろう。VIVEやVIVE Pro等のVRシステムに採用されている液晶ディスプレーのリフレッシュレートは90Hzであるため、PC側がコンスタントに90fps以上を出せていれば、滑らかで違和感のない映像が楽しめる。
90fpsを達成するためには、1フレームあたり11ms(ミリ秒)で次々と描画処理をする必要がある。SteamVRの「設定」からフレームタイムを表示させることで、この11ms以内の作業をできているかチェックするのだ。GPUのフレームタイムが11msに近ければ、描画処理に“余裕がない”ということになるし、4〜5msなら“かなり余裕がある”と見ることができる。
そして11msを越えてしまうと、90fpsを維持できなくなるが、この時フレームレートは45fps→30fps→15fpsと段階的に下がることが多い。普通の液晶でいうところの“スタッタリング”が発生するためだ。
フレームレートが落ちても、ゲーム側が対応していればモーションスムージング等の補完機能が発動して、一見フレームレートは維持しているように見せることもできるが、ヘッドセットの方向を素早く変化させると、補完が追いつかなくなり画像が不自然に歪むことになる。つまりフレームタイム11msの壁をいかにキープするかが重要なのである。このあたりは前回のレビュー記事も参考にするとよいだろう。