2012年11月23日と24日、スクウェア・エニックスが東京都のベルサール神田で公開技術カンファレンス“スクウェア・エニックスオープンカンファレンス2012”を開催した。
その中から本稿では、同社テクノロジー推進部のドリアンクール・レミ氏とメタアパノン・ナパーポーン氏による発表“リアルタイムグラフィックス技術解説”の内容をお届けする。なお、講演はおもに人体周りの内容をドリアンクール氏が、後半の無機物周りのシミュレーションなどをメタアパノン氏が行った。
テーマは、テクノロジー推進部が開発中の最新ゲームエンジン“Luminous Studio”の技術デモ「Agni's Philosophy」を制作するにあたって、どのようなリアルタイムCG技術が使われているか。最新の学術的研究なども応用した専門的な内容だったが、講演中に見せていたデモ映像や参考画像が面白かったので、専門用語は適宜読み飛ばしつつ、「へー、そんなことやってるの」程度でも興味を持って頂ければ幸いだ。
グローバルイルミネーション
おおざっぱに説明すると、照り返しなどの間接光などを考慮して照明効果を計算すること。実際にはすべての光線の行方を追うわけにはいかないので、さまざまな手法で事前計算を行なっておいて、擬似的に再現するのが一般的。
アンビエントオクルージョン
周囲から当たる環境光がどれだけ強いかを考慮するにあたって、物体の特定の部分がどれだけ遮蔽されているかによって色を変化させ、主に自然な陰影を再現する。
肌周りの表現(サブサーフェイススキャッタリング、肌のスペキュラーetc)
通常のシェーディングでは皮膚が「カサカサに見える」とドリアンクール氏。人間の皮膚の感じを再現するために、サブサーフェイススキャッタリングや独特なスペキュラー処理などを行なっている。サブサーフェイススキャッタリングとは、物体内に入った光が散乱する現象。人体モデルなどでは、手のひらを太陽に透かしてみると真っ赤に流れる僕の血潮が見えたりする、光の皮膚下散乱のこと。
髪の毛の表現
顔の表現同様、髪の毛についてもヴィジュアル・ワークス品質の髪をリアルタイムCGとして実現することを目指している。問題は1本1本シミュレーションした場合は自然で滑らかな髪の毛を再現できるが、負荷が大きい上にアーティストの蓄積がないこと。そこで「Agni's Philosophy」では、ふたつの毛のモデルを組み合わせている。
ガラス・屈折
ガラス瓶のCGをいかにガラス瓶のように見せるか? 「Agni's Philosophy」には、銃創を負ったアグニが清涼飲料水に回復魔法を込めて自分を回復する印象的なシーンが出てくる。
パーティクルシステム(水、血、煙、光虫……)
パーティクルとは、粒子のこと。「Agni's Philosophy」では、キャンドルの灯、回復魔法をかけた水、召喚獣の肉を形成していく大量の光虫などがパーティクルシステムで生成され、制御されている。中でも発光しながら飛ぶ超大量の光虫は圧巻。10万匹が生成され、互いに重なり合わないようにしながら飛びまわっている。光虫は召喚獣の骨に取り付いたところで置き換えられて肉を形成していくのだが、こちらもパーティクルで処理している。