オススメ機能
Twitter
お気に入り
記事履歴
ランキング
パッケージ
アサシン クリードIII公式サイトへ
読者の評価
63
投稿数:5
レビューを投稿する
海外での評価
86
Powered by metacritic
お気に入りタイトル/ワード

タイトル/ワード名(記事数)

最近記事を読んだタイトル/ワード

タイトル/ワード名(記事数)

LINEで4Gamerアカウントを登録
[GDC 2013]「アサシン クリードIII」で採用された,「PS3・Xbox 360世代でも可能なリアル」を実現する技術
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2013/03/30 22:07

ニュース

[GDC 2013]「アサシン クリードIII」で採用された,「PS3・Xbox 360世代でも可能なリアル」を実現する技術

Jean-Francois St-Amour氏(Lead Graphics Programmer, Ubisoft Montreal)
 「Game Developers Conference 2013」(以下,GDC 2013)の最終日となる米国時間3月29日,Ubisoft MontrealのリードグラフィックスプログラマーであるJean-Francois St-Amour(ジャン・フランソワ・サンタムール)氏により,「Rendering Assassin's Creed III」(アサシン クリードIIIのレンダリング)と題する講演が行われた。2012年10月に注目のAAAタイトルのひとつとして発売された「アサシン クリードIII」(以下,AC3)に使われたグラフィックス技術を解説するという内容だ。

 氏によれば,AC3は最新レンダリング技術を駆使した……というわけではなく,むしろ“現時点でベスト”と思える技術を選択して制作されたという。St-Amour氏の講演では,「なぜその技術を選んだのか」が語られたので,興味深いポイントに絞ってその内容を紹介してみたい。


AC3のグラフィックス〜多彩な天候表現


 AC3はPC版だけでなく,PlayStation 3(以下,PS3)版とXbox 360版,さらにはWii U版も発売された,典型的なマルチプラットフォームのゲームである。
 そのため本講演で語られた内容は,基本的に「PS3やXbox 360でも可能な範囲のリアルなグラフィックス」をいかにして実現するかというものであり,最新技術とパワフルなPC用GPUをフル活用するような話ではない。現に,PC版でどのように表示品質を向上させたかは,最後に少し触れられた程度である。

アサシン クリードIII
季節に伴う天候の変化は重要だが,Ubisoft Montrealでは,「性能を犠牲にすることなく表現できること」を目指したという
 「AC3のシェーダシステムを紹介したい」と話を切り出したSt-Amour氏が,まず取り上げたのは天候の表現だ。「AC3では,夏や冬のさまざまな天候を再現して,ユーザーが素晴らしい体験をできるようにと考えた」という。そのうえで,さまざまな天候を「同じメモリ(消費量),同じデータ,同じ性能で表現することを目指した」そうだ。

 たとえば雨の場合,カメラ近傍の雨はパーティクル(粒子)を使って表現するが,20メートル以上離れた雨は,風の方向に沿った円筒を置いて,円筒のテクスチャを「UVスクロール」で表現しているという。UVスクロールというのは,UV座標(=テクスチャ座標)をズラすことで動きを表現する技法で,一般的によく用いられるものだ。

アサシン クリードIII
AC3における雨の表現。近場の雨はパーティクル,20メートル以上離れた雨は,円筒に貼ったテクスチャをUVスクロールで動かして表現する

 St-Amour氏はこの手法を「非常に簡単な方法」と述べていた。確かにシンプルな実装ではあるが,完成したAC3での雨は,かなりリアルな見た目を表現できていて,感心させられる。

アサシン クリードIII
これはゲームの画面ではなく見本の写真だが,「こんな風に足跡がつくようにしたかった」とSt-Amour氏
 一方で,雪はすべてパーティクルを使わっているという。雪の表現で面白いのが,キャラクターが雪上を歩くと,リアルタイムで足跡が生まれることだ。「ユーザー体験を向上させるためにも雪に足跡を付けたかった」(St-Amour氏)とのことである。
 雪に足跡を付ける手法も披露された。まず,GPUによるリアルタイムテッセレーションで地面のメッシュを細分化。次に「Render to Vertex Buffer」(R2VB)というテクニックを使って,頂点テクスチャの重心をレンダーターゲットから拾って変形させ,ディスプレースメントマップに反映させるという手法を使ったとのことだ。

アサシン クリードIII
AC3では,雪に足跡をつけるためにR2VBを用いている
 R2VBとは,DirectX 9時代に話題になった技術で,レンダーバッファからテクスチャなどの情報を得て計算し,計算結果を頂点情報に反映させるものである。DirectX 10の登場以降は話題にならなくなったが,ゲーム機のグラフィックス機能はDirectX 9世代相当。なのでAC3では,R2VBを「コスト効果の高いキーテクノロジ」として多用することになったのだそうだ。

 天候についてはほかにも,「雪や雨で濡れた道路などの表現にあたって,ノーマルマップのZ成分を調整することで頂点の色を変化させ,反射率も変える」手法を採用したことが明かされたが,これも,処理負荷を考えると比較的リーズナブルな方法と言える。ストレートに表現するには負荷の高い雨や雪の表現を,できるだけ効果的かつ低負荷な方法を選んで,慎重に実装したようだ。

アサシン クリードIII
濡れた道路の表現のサンプル。写真の左斜め上半分が,この方法を用いている部分で,それらしく濡れているように見える


グローバルイルミネーションはVPLによる事前計算


アサシン クリードIII
AC2で採用されたWORLDLIGHTMAPの利点(Pros)と欠点(Cons)
 続いて解説されたのは,AC3におけるライティングである。St-Amour氏によると,アサシン クリードII(以下,AC2)では「WORLDLIGHTMAP」という名称で,グローバルイルミネーション(大局照明。以下,GI)を実装していたそうだ。WORLDLIGHTMAPでは,反射光があるあたりにアーティストがライト(プローブ)を置くという,ゲーム機ではよく用いられている方法を使っていたという。

 「これには利点と欠点がある」とSt-Amour氏。利点として真っ先に挙げられるのは「負荷が軽い」ことで,一方で欠点としては,「鏡面反射がなかったり,とくにアーティストの負担が大きい」ことが挙げられるという。

アサシン クリードIII
WORLDLIGHTMAP V2では,事前にGIのための静的光源を計算しておく手法を採用した
 そこで,AC3に導入された「WORLDLIGHTMAP V2」では,「Each Texel Level Virtual Point Light」という手法を用い,リアルタイムにGIを適用するための仮想的な点光源(Virtual Point Light,以下 VPL)を,あらかじめ計算しておいたのだそうだ。テクスチャごとにパラメータを設定し,そこから計算でVPLを求めたため,「テクセルごとに」という接頭語を加えたようである。

 VPLによるGIを導入したことで,たとえばPlayStation 3の場合,ライティングの計算負荷はピクセルあたり0.8msで済んだとのことで,「アーティスティックにかかるコストの,95%を削減できた」と,St-Amour氏は誇らしげに語った。95%というのは大袈裟なように思えるが,自動的にライティングを計算できるようになったことで,手作業を大幅に減らせたのは確からしい。

 映像的にも効果はあるようで,WORLDLIGHTMAPと同V2を比較したサンプルでは,同じシーンであっても照明の雰囲気が変わり,よりリアルな表現を実現していた。

アサシン クリードIII アサシン クリードIII
写真では分かりにくいかもしれないが,左がAC2での手法で描いたサンプルで,右はAC3のWORLDLIGHTMAP V2によるもの。人物の陰影に目が行きがちだが,壁による反射光を再現して,中央の人物右側の上を向いた面の明るさが違うのが,WORLDLIGHTMAP V2の効果によるもの

アサシン クリードIII
WORLD AOでは,事前計算式のAOを用いる
 さらにAC3では,環境光を擬似的に再現するアンビエントオクルージョン(Ambient Occlusion,以下 AO)も併用しているという。こちらも,PCでよく利用される,リアルタイムの「SSAO」(Screen Space Ambient Occlusion)ではなく,事前計算を用いた手法を使っており,St-Amour氏はこれを,「WORLD AO」と名付けたそうだ。
 WORLD AOでは,上方向からの奥行き情報を使ってマスクの元画像を作成し,それにぼかしをかけた画像を用いるのだという。これも処理コストと実際の効果を秤にかけて採用した手法,という印象を受ける。

アサシン クリードIII
テクスチャを省いてレンダリングした,WORLD AOのサンプル画像。AOの効果がイメージしやすい


海にも凝ったAC3

PC版ではDirectX 11なりの処理も搭載


 AC3では,水面の表現にも力が入れられたという。「本作は18世紀が舞台で,海が重要な役割を持つだけに,海や水の表現には力を入れた」(St-Amour氏)。海の表現では,この分野で有名な論文「Simulating Ocean Water」(関連リンク,PDFファイルが開きます)に準じた手法で,海の波を再現しているそうだ。それに加えてSt-Amour氏は,「波濤の泡を再現したことに特徴がある」と述べている。

 具体的には,波頭から泡の量を計算で求めて,泡をレンダーターゲットで合成しているという。泡は生成から消滅までしっかりとシミュレートされ,非常にリアルな見た目になったそうだ。

アサシン クリードIII
波の泡立ちは,波濤から大きさを計算して,レンダーターゲットで合成。生成から消滅までを,周波数を変えて再現しているそうだ
アサシン クリードIII
再現された波のサンプル。非常にリアルに見えた

 なお,本稿の序盤で述べたとおり,St-Amour氏は講演の最後でPC版AC3についても触れている。PC版ではDirectX 11の仕様を一部に取り入れ,PC版にふさわしいグラフィックスとなるような工夫が凝らされた。そのなかでも特徴的なのが,先ほども話題に出てきたAOの活用とのことだ。

 PC版AC3では,最新の「Multi-resolution Screen Space Ambient Occlusion」(MSSAO)という技術が取り入れられている。ただし,MSSAOは非常に処理負荷が高いので,解像度によって「Horizon-Based Ambient Occlusion」(HBAO)と使い分ける,ハイブリッド式の「MHBAO」を実装したと,St-Amour氏は述べている。

アサシン クリードIII
PC版AC3では,MSSAOと,HBAOを併用するハイブリッド方式を採用した

 ちなみに,PC版AC3でのMSSAOの採用については,NVIDIAがGeForce GTXシリーズの優位性を訴えるプロモーションの一環として,解説ページを公開している。St-Amour氏はNVIDIAと協力した自らの経験を基に,PC版のゲームを開発するときには,GPUメーカーに連絡して協力を得たほうがいいと呼びかけていた。

 次世代ゲーム機となるPlayStation 4が発表されたものの,当分ゲーム機の主役はPS3やXbox 360であろう。St-Amour氏の講演で示されたように,効果的かつ処理負荷の低い表現の実装を模索するような開発は,しばらく続きそうだ。AC3はそんなモデルケースのひとつとなるに違いない。

アサシン クリードIII 公式Webページ

Game Developers Conference公式サイト

  • 関連タイトル:

    アサシン クリードIII

  • 関連タイトル:

    アサシン クリードIII

  • 関連タイトル:

    アサシン クリードIII

  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
トピックス
スペシャルコンテンツ
注目記事ランキング
集計:11月13日〜11月14日
タイトル評価ランキング
81
KENGOHAZARD2 (PC)
76
鬼ノ哭ク邦 (PC)
74
2019年05月〜2019年11月