>   >  GDC2016に見るハイエンドVR&ゲームグラフィックス動向
GDC2016に見るハイエンドVR&ゲームグラフィックス動向

GDC2016に見るハイエンドVR&ゲームグラフィックス動向

3月14(月)〜18日(金)にかけて米サンフランシスコで開催された、世界最大のゲーム開発者会議Game Developers Conference 2016(GDC)。今年のハイライトとなったのはもちろん、今春にコンシューマー製品がローンチされるVR(Virtual Reality)関連の情報だった。

今年から新設されたVR専門トラック「VRDC」を含め、会期中に40を超えるVR関連セッションが行なわれたことからも、GDC 2016におけるVRへの過熱ぶりが伺える。

▲VR特化型のトラック「VRDC」。どのセッションも関心が高く、満席が続いた

様々なメーカーが新製品や試作品を展示するEXPOでも、半数以上のブースで何らかのVRヘッドセットやVR関連デバイスを見ることができた。広くコンピューターグラフィックス業界全体においても、VRという新しい媒体の登場は、いよいよ無視できない社会現象になりつつあるという印象を強くした。

▲会場内ではどこに行ってもVRHMDを用いた展示を見ることができた

一方、既存のフラットスクリーン向けのコンテンツについても、最新の知見が得られる技術セッションを複数見ることができた。特に勢いがあったのが、近年になって多彩なジャンルの最新ゲームタイトルを多数投入しているUbisoftによるセッションだ。

UbisoftはPS4・Xbox Oneといったいわゆる"次世代機"への完全移行を完了しており、これらの最新ゲームプラットフォームの持つマシンパワーを活かしたゲームグラフィックス技法の開発・応用に対して抜きん出た積極性を見せている。

本稿ではそんなGDC 2016のVRおよびハイエンドゲームグラフィックス関連セッションから、特に先駆的と見られる2例をピックアップしてご紹介したい。

フォトグラメトリーによる緻密な環境データをリアルタイム描画した「Everest VR」

実写に基づくVR映像は、ノンゲーム系VRコンテンツにおける王道の表現方法といえる。ステレオカメラや360度カメラで撮影された無数の"VR体験コンテンツ"が、Google CardboardやSamsung GearVR、ハコスコ等のスマホ向けのコンテンツとして既に大量制作されているという現状からも、それは明らかだ。

とはいえ、実写系VRコンテンツにはユーザーがVR空間内で自発的に動きまわることができない、という致命的な弱点がある。つまり、撮影した映像を視聴するだけの体験になってしまい、"ユーザー自身がその空間に参加する"という、本来的な意味でのVRのコンセプトを実現できない。

ユーザー参加型のVRを実現するためには、リアルタイム3DグラフィックスによるVR映像が必要になることは明らかだ。そこに、実写による説得性の高い映像の力を組み合わせるにはどうすればよいか。そこに一つの答えを出したのが、VRコンテンツ開発のスタートアップ企業Solfar Studiosと、映画「エベレスト」のVFXを担当した企業RVXによる共同プロジェクトで実現したVRデモ「Everest VR」だ。

▲実写と見紛うほどのリアルタイムグラフィックスを実現した「Everest VR」

ルームスケールVRを謳うHTC Vive向けのコンテンツである「Everest VR」では、エベレストの山頂付近にある複数の名所・難所を乗り越え、登頂を目指すというユーザー参加型のVR体験を楽しむことができる。その映像は実写さながら......というよりは実写そのもののリアリティだ。これを実現した背景には複数の最新技術・ゲーム系技術の応用がある。

▲EVEREST VR first look


▲「Everest VR」のストーリーボード。山頂付近のキャンプから難所を越え登頂するというコンセプトになっている

フォトグラメトリーによるエベレスト山頂の精密サンプリング

「Magical Realism: The Art of Creating Everest in Your Living Room with VR 」と題するセッションで明かされたところによれば、"実写さながら"のエベレストをコンピューターグラフィックスとして制作するにあたり、フォトグラメトリー(Photogrammetry)技術を用いた。

フォトグラメトリーとは、複数の観測点から撮影した写真を元に、撮影対象の立体構造を3Dデータ化する技術。高精細な写真を大量に解析することで高精細なメッシュとテクスチャデータを得ることができるが、その実現には最新のアルゴリズムと大量の計算時間が必要になる。

▲フォトグラメトリーの概略

そこで本プロジェクトでは、Designing Reality社のソリューションを利用。28コアのCPU、128GBのRAMに、大量のSSD、GeForce Titan Xを6枚搭載したワークステーションを用い、数万枚の撮影データを解析。数ヶ月をかけて1兆5000億ポリゴンのメッシュデータに落とし込んだ。

Designing Reality
http://www.designingreality.co/

データの粒度には場所によってかなりの差がある。データ全体としてはエベレスト山脈全体を覆うほどの広い範囲がカバーされているが、実際のデータ量的には、山頂付近のプレイエリアにデータのほとんどが集中している。クローズアップされることが前提のいくつかのシーンについては、山脈全体よりも多くのデータを用いているというから面白い。

▲写真素材の撮影にあたっては、徒歩による接写と、ヘリによる広域の撮影の両アプローチが採られた

Unreal Engine上でリアルタイム描画

この膨大なデータをゲームエンジンであるUneal Engineでリアルタイム描画するために、さらなる工夫が行われている。

まず、データを扱いやすくするため、シーン全体をおよそ1500万ポリゴンづつの126個のパッチに手作業で分割。山頂付近についてはもともとのデータ密度が非常に濃いこともあり、パッチの分割はかなり細かくなっている。その中で遠方にしか表示されないとわかっている部分については、ノーマルマップをベイクした。

▲遠景部分はごく大雑把な分割になっているが、 山頂付近は非常に細かくパッチが分割されている

▲プレイエリアに相当する部分では、山脈よりも多くのポリゴンが1つの構造に割かれている

それでも、近景として表示される部分のジオメトリ量は膨大だ。ターゲットマシンのスペックはGeForce GTX 970を搭載したごくふつうのゲーミングPCであるので、大胆な最適化が必要。特にプレイエリアに重なる部分は、プレイ中に様々な距離・角度で表示されるため、動的なLODレベルで表示される必要がある。そこで活用されたのが、ゲーム業界で広く使われているジオメトリ最適化ソリューションの「SIMPLYGON」だった。

SIMPLYGON
https://www.simplygon.com/

ゲームエンジンへの組み込みが前提となっているSIMPLYGONでは、シーンの必要性に合わせたLODレベルに調整されたメッシュデータを半自動的に生成し、グラフィックスエンジン上で適切なLODレベルでの描画を行なうことができる。セッションで示された例では、山頂付近のメッシュについて5つのLODレベルが用意されており、132,000ポリゴン~7,000ポリゴンと、かなりの幅を持たせてある。

▲SYMPLYGONによるLOD生成

ここまでの最適化を加えても、一般的なゲーミングPCでのリアルタイム描画は不可能だ。シーン全体が非常に巨大で、特にテクスチャデータ(全マテリアルで8Kの高解像度を使用)が24GBにも及び、とてもビデオメモリに収まらないためだ。そこで使用されたのが、ゲーム向けのテクスチャ圧縮とストリーミングのソリューションであるGRAPHINEのGranite。このソリューションによりテクスチャデータを8分の1に圧縮し、GTX 970のビデオメモリ(4GB)上での動作を可能とした。

GRAPHINE Granite
http://graphinesoftware.com/granite

また、写実的な空の描画には、シミュレーションベースの天球描画ソリューションであるSIMUL trueSKYを用いている。

SIMUL trueSKY
http://simul.co/truesky/

▲SIMUL trueSKYによるシミュレーションベースの天球と雲の描画

このように非常な高品質のグラフィックスを実現した上で、さらにパフォーマンスを高めるために用いられたのが、NVIDIAのゲームグラフィックス支援技術である「GAMEWORKS」のMultires Rendering機能だ。これは複数解像度での描画を、1パスで実現する技術。VR特有のレンズ歪みにより描画ピクセルが潰れてしまう視野の端部分を、はじめから低い解像度で描画するという最適化を高効率に実装することができる。「Everest VR」ではこの技術の活用により、レンダリング時間を1~2ミリ秒削減できたという。その削減分はもちろん、高品質化に向けられる。

▲レンズ歪みによって潰れてしまう部分を、低解像度でレンダリングすることによる最適化

NVIDIA GAMEWORKS
https://developer.nvidia.com/gameworks

HTC ViveやOculus RiftといったPC用VRシステムでは90fpsでの描画が基準となるため、1フレームの描画に使える時間は10ミリ秒ほどしかなく、非常に厳しく描画効率を求められる。「Everest VR」はその制限の中で、実写と見まごうばかりの高品質な風景を、リアルタイムグラフィックスで表現することに成功している。その実現に寄与した上記のような各技術は、今後様々なVRコンテンツの制作に活用されていきそうだ。

▶︎次ページ:︎
リアルタイムアニメーション技術に斬新な手法を持ち込んだ「For Honor」

特集