15 (1)

現在開催中の「Gamescome 2016」でSCE London Studioによる講演が行われ、「Resolution Gradient」をはじめとしたPSVR向けのタイトルを開発する上で有用な開発技法が紹介されました。

PlayStation VRの巧妙な最適化技法が明らかに! - GAME Watch

VR専用エンジン「LSSDK」
そこでLondon Studioでは、LSSDKという独自のゲームエンジン・開発フレームワークを用意。
(中略)
London Studioではこのような内製エンジンを用意することで、コンテンツ開発そのものと同じくらいに、高性能のVRゲームを実現するための各種テクニックを試行錯誤しながら開発することを重視。そこで開発された技術が他のVRコンテンツでも活用される可能性が高い(PSVRのSDKそのものに反映されることもあるはずだ)ことを前提に、プログラムコードやシェーダーレベル、ワークフロー自体を必要に応じてどんどんカスタマイズできるようにしたわけだ。

高速なライティング技術「Lightfield」
ひとつは、Lightfieldと呼ばれるライティングのテクニック。これはボクセルベースのリアルタイム大局照明技法で、光の散乱や二次反射といった複雑なライティング効果を表現できる上、処理も高速だというのが大きなメリット。
 一般的なライトマップ技法に比べてライティングの解像度が格段に低くなってしまうという弱点もあるが、長大な時間を要するプリプロセスが不要で、試行錯誤を素早く繰り返せるという利点がVRコンテンツ開発にとって非常に有利だったという。

視野周辺部の描画ピクセル削減手法「Resolution Gradient」
これは、基本的な考え方としては、視野の中央をフル解像度で描きつつ、視野の端の部分は低解像度で描画するというテクニック。1つのやり方としては画面を複数のビューポートに分割し、それぞれを異なる解像度で描画したうえで合成するという方法があるが、この方法ではレンダリング回数が増えてしまい、CPU負荷が高まるため不採用となった。

 そこで採られたもう1つの手法が天才的だ。この「Resolution Gradient」という手法では、視野の中央から端に向かって次第に濃くなっていく形で、描画ピクセルのマスクを配置する。レンダリング自体は画面全体でフル解像度で行なうが、マスクされたピクセルについては描画処理をスキップ。これによりたった1度の描画で、複数解像度のレンダリングができてしまう。効果的にGPU負荷だけを抑える、非常に優れた手法だ。

VRコンテンツの開発に当たっては視野周辺部の描画クオリティを下げ、その分の処理性能を視野中心部に充てるテクニックが効果的であることが知られていますが、「Resolution Gradient」という技術によってそれを低負荷かつ高品質で実装することが可能になるということのようです。

PSVRにおける最適化技法としては、生成済フレームを再利用することで低負荷で60FPSから120FPSにフレームレートを倍増させる「リプロジェクション」が有名ですが、これらのVR向けの最適化技術はまだまだ進化していくのでしょう。