― 連載 ―

タイトル

未完成のUE3を洗練するのにフレームシティが貢献

(善):Epic Gamesとナムコの間には,どういった交流があったのでしょうか。
 私の勝手な憶測をしゃべらせていただくと,もしかしてフレームシティって,Epic Gamesにとっては「UE3の実験プロジェクト」みたいなものになっていたんじゃないかな,とか思ったりしていますが。

国森:「使います」って手上げたの早かったですからね。まぁ,モルモットですよ(笑)。

川島:実際,UE3ってまだファイナル版ではないわけですよ。完成するのは来年の夏くらいじゃないですかね?
 彼らのXbox 360向けオリジナルタイトル「Gears of War」の完成が半年後(編注:取材時は2005年10月下旬)といわれていますし。
 フレームシティは確かにUE3ベースなんですが,実際には,エンジン部分に我々ナムコの独自拡張も,かなりの割合であるんですよ。

(善):ナムコからUE3への逆技術提供とかはありました?

国森:そこまで言っていいかは分かりませんが,我々が「これってこういう機能にしたほうがいいんじゃないの?」とEpic Gamesに投げて,彼らが「ああ,それいいね」と返ってくる,といったやりとりは何度もありましたね。

川島:俺たちのアイデアを使うなら,エンジンのライセンス料を割り引いてよ,みたいな(笑)
 実際,現時点でUE3の完成度はかなり高くなっていますから,来年の夏くらいに,"完成版UE3"で使い始める開発チームは,相当楽になると思いますよ。面倒くさいことは,だいたい解決しましたし。

国森:いずれにせよ,フレームシティはUE3の完成度を高めるためにだいぶ貢献したのではないでしょうか。

フレームシティにおけるグラフィックス表現と物理エンジン

人物一体一体に,きちんとセルフシャドウ付きの影が落ちる。頭の影が肩などへ投射されている点に注目してほしい

(善):技術デモとして作ったわけではない,というのはよく理解したうえで,あえて伺いたいのは,フレームシティのグラフィックスが,どういう方向を向いているかです。
 いわゆる「次世代機」では,徹底した影生成や人肌の表現(スキンシェーディング)などが,かなり重んじられていますよね。NVIDIAやATI Technologiesはそういうデモばかり見せていますし。フレームシティではどうなんでしょう。

国森:確かに,影生成についてはかなり凝ったものになっていますね。UE3の機能として提供されているものなので,どういうときにステンシルシャドウボリューム技法やシャドウマップ技法が使い分けられるのか,はっきりとしたことまではお話できないのですが。ただ,人物のセルフシャドウはもちろんのこと,ビルが落とす影が,太陽の位置によって変わったりしますし,もちろん伸びたり縮んだりもします。

シーン全体に投射される建物の影は,天空に設定された太陽光源によって,リアルタイムで生成される

川島:人物のスキンについても,シネマティックシーンなどでキャラクターが大写しになる局面では結構凝ってますよ。それから,輪郭側から漏れてくるハイダイナミックレンジ(HDR)レンダリングの効果は,逆光の表現として,随所に盛り込んでいます。

国森:フレームシティでは,24時間息づく街を表現したかったのですが,もやなどといった"空気の遠近感"も,よくできたのではないかと思っています。

左:シーンの深度に配慮された空気遠近表現。これまでの描画境界フォグとは違い,空気の層の厚みを感じるビジュアルになっている
右:人肌もかなりリアル。眼球には光源の位置に合わせてスペキュラ(光沢)が出ている点に注目。髭の生え際の凹凸は法線マップによる表現のようだ

こうした破壊物の破片の挙動には,積極的な物理エンジン活用が行われている

(善):最近のGDC(Microsoft Game Developers Conference)やE3(Electric Entertainment Expo)などといったイベントで,Epic Gamesは,UE3が持つ物理エンジンの優位性を強調したデモを行っていました。UE3では,物理エンジンにAGEIA TechnologiesのNovodeX(現PhysX)が使われていますよね。これは,フレームシティでどの程度使われているのでしょうか。

川島:Epic Gamesが見せた物理エンジンのデモって,ボールがごろごろ転がって,その道中,いろいろなものと衝突して,次から次へと仕掛けが作動していくアレ(編注:2005年6月16日の記事で紹介したムービーを参照)ですよね。ただ,実際のゲームにおける物理エンジンは,ああいうのとは違って結構地味なんですよ。これ見よがしに見せるのはなかなか難しいんですね。物理エンジン活用に特化したゲームなら話は別ですが。

国森:フレームシティでは,リアクションのための活用がメインですね。車両の挙動制御にNovodeXの車両物理を使ってますし,その車が箱か何かにぶつかって,箱の破片が飛び散ったりする,そういった挙動には,当然使われています。

フレームシティとマルチスレッディング

(善):CEDEC 2005の講演でAGEIA Technologiesは「NovodeXは,マルチプロセッサに適したマルチスレッド前提の設計になっている」みたいなことを言ってましたが,実際のところはどうでしたか。

川島:それは「最新バージョンのNovodeXでは」ということではありませんか?(笑) (ナムコがフレームシティの開発に用いたバージョンのNovodeXだと)我々はそのあたりを自分達でやったような(笑)

国森:UE3はもともとPCがターゲットですから,最初は「PCで動けばいい」みたいなところがありました。当然,シングルスレッドだったんですけど,Xbox 360の実機でいよいよ動かせることになってきたところで,マルチスレッド化が推し進められたという。

川島:UE3はやはりPC生まれなので,Epic Gamesは,とりあえずPCで動くレベルのものを形として作るんですね。それで,あとから「Xbox 360はマルチコアだよ,どうする? よし,マルチスレッド化だ」みたいなことになって(笑)

国森:もともとシングルスレッドで作り込んで,一つのコアを酷使するような形で動いていたものが,マルチスレッド化で余裕が生まれた,といったところはありましたね。あまり詳しいことはお話できないですが,シングルコアで動作していたゲームエンジンの各要素を,Xbox 360というPower PC 970互換のCPU 3個を持つゲーム機に適したマルチスレッドに分解するノウハウについては,ひょっとするとEpic Gamesよりも我々のほうが持っているかもしれません(笑)

(善):つまり,フレームシティにおけるマルチスレッド化対応というのは,ナムコの開発チーム主導で行われたという感じなんでしょうか。

川島:そうですね。ただ,何でもかんでもマルチスレッドに分解したというわけではありません。ゲームの進行に密接に関わる部分(筆者注:描画フレームごとに動作の同期が必要な処理系)は,マルチスレッド化すると何が起こるか分からないという,怖い部分もありますから。
 その意味では「UE3の物理エンジンとしてのNovodeX」は,比較的マルチスレッディング化しやすかったですね。

(善):砕け散った破片のパーティクル挙動計算などは,フレーム描画と同期しなくても問題ないですからね。粒度の粗いマルチスレッド化というのは,マルチスレッディング化において有効だといわれていますし。

 デュアルコア,そしてマルチコアは現在のコンピュータハードウェアのトレンドであり,ご存じのようにAMDやIntelは,デュアルコアCPUを主力として設定してきている。
 CPUメーカーがシングルコアのCPUを高クロック化していた時代は,ソフト側で特別に何かしなくても,CPUが速くなれば,ソフトウェアも自動的に高速化されていた。細かい最適化の話を別にすれば,ソフトウェアを速く動作させるために,特別な工夫は必要なかったのだ。

 しかし,マルチコア時代だとこうはいかない。
 マルチコアを効果的に活用するソフトウェア,すなわちマルチスレッドに対応したソフトウェアでなければ,CPUの性能を発揮できない。ソフトウェアとしてのパフォーマンスは向上しないのである。
 このあたりの有名な話として,Intelは「The Free Lunch Is Over:A Fundamental Turn Toward Concurrency in Software」という論文を引用して,積極的なマルチスレッド化への移行をソフトウェア開発者に強く推している。この論文では,何もしないでもソフトウェアが高速化されていたころを「タダ飯」(Free Lunch),"何もしなくてもご飯が出てくる"時代としている。そして,マルチスレッド化なしではソフトウェアの高速化が望めないマルチコア時代を「Free Lunch is Over」(タダ飯時代の終焉)といっているわけだ。

 マルチスレッドに対応したソフトウェアの場合,並列実行されている各スレッドの演算結果を,どこかのタイミングで収拾し,実際に利用する同期処理を行う必要がある。だから,この処理自体に多大な手間や時間がかかっていたのでは,マルチスレッド化する意味がない。CPU負荷低減のみが目的の場合はともかくとして,マルチスレッドに対応しているにもかかわらず,ソフトウェアが高速化されない場合,ほとんどはこれが原因だ。
 逆にいえば「同期処理に要する時間が,ソフトウェア全体の処理時間に占める割合を小さくすること」が,マルチスレッド対応ソフトウェアのパフォーマンスを上げる早道となる。例えば,各スレッドが同期する頻度を下げればいい。このことを「粒度の粗いマルチスレッド化」というが,これこそがマルチコアCPU時代に最適なソフトウェアモデルなのだ。

 ところが,フレームシティのような,リアルタイムで展開するゲームは,こうしたアプローチと相性が悪い。ゲームが毎秒60コマで展開するなら,すべての処理が60分の1秒ごとに完結しなければならないからだ。
 もっとも,多少なら同期の頻度が低くても(同期粒度が粗くても)実害のない処理系はある。例えば敵の行動AIなどは,毎フレーム更新でなく,たとえば2,3フレームおきの更新でも,まったく問題なかったりするのだ。物理エンジンの処理系も,すべてではないが,粒度の粗いマルチスレッド化に適したものが少なくない。「吹っ飛んだ破片の挙動計算」などは,3フレームおきに「破片の次の移動位置」が算出されるようにしておき,その間は,物体の形や位置を一定フレームごとにチェックして,その間の"動作の過程"を補間する「キーフレームアニメーション」でつないで処理しておけば,それほど違和感はないし,ゲーム性にも影響はない。
 フレームシティにおいても,そうした物理エンジン処理系(の一部?)はマルチスレッド化されて実装されていると推察される。

フレームシティの衝突判定

(善):衝突判定(コリジョン)はどうですか? NovodeXのプレゼンテーションでは,衝突判定の形状モデルがボックス(立方体/直方体)とかスフィア(球体)ベースだけでなくて,かなり外観に近い形状が設定できるといったことが強調されていましたが。

国森:確かにできます。しかし,精度の高いコリジョン形状を設定すれば,それだけ実行が重くなりますからね。通常移動では円柱状の簡略化形状にして,銃撃戦の時にはちゃんとその人型のモデルに近い衝突形状で当たり判定取ったりといったように,当然といえば当然ですが,状況に応じて使い分けています。

川島:表現の幅が広がっているという感じですね。つまり「いつでもボックスとかスフィアの当たり判定しかできないんじゃなくて,やろうと思えば,かなり細かい衝突判定だってできるんだよ」という。実際のゲーム制作では,ゲーム性,つまり,そのゲームにおける処理速度とのバランスなどで臨機応変に使い分けることになるんです。

(善):UE3やNovodeXのプレゼンテーションでは「デザイナやアーティストがコリジョン形状を設定できる」といった話がありましたが。

川島:そうですね。我々のチームだと,絵描きのスタッフが設定してました。こういうときに,プログラマーではなく,絵描きスタッフが直接設定できるというあたりは,UE3の便利なところですね。

Unreal Editorには,物理モデリングツール「PhAT」が統合されている。PhATを使うと,3Dモデルから最適な衝突形状(衝突して,壊れたときの形状)を生成したり,内部に設定した骨格アニメーションの編集も行える。「この程度の力をかけると折れる」といった設定を,実際にプレビューしながら設定できるのだ。川島氏のいう「絵描きのスタッフが」処理しているのは,このPhATを用いた設定と思われる

次世代ゲーム機のメディアはディスクかネットワークか

(善):次世代ゲーム機では,データメディアに対しての考えが変わってきました。プレイステーション3は,12cmディスクメディアとしての最大容量である,2層50GBのBD-ROMを採用しましたが,Xbox 360だと,2層8.5GBのDVD-ROMですよね。ただし,MicrosoftのJ Allard(ジェイ・アラード,Xbox 360プラットフォーム開発責任者)氏は「DVD-ROMはメディアの手段の一つに過ぎない。ネットワークこそデータメディアの主役なのだ」と息巻いています。
 ナムコのような,最前線の開発現場では,どういう考えなのでしょうか?

国森:フレームシティの話をすると,2層8.5GBはけっこう埋まりましたね。詰め込みに詰め込んだ,という感じです。
 ただ,開発側からして,ネットとディスクメディアのどちらがやりやすいかといえば,断然ディスクメディアですね。単純に「ネットワークで新キャラ追加」みたいなことであればそれほど難しくないんですが,ネットワークにつなぐと,何かゲームの根幹に関わる変化がある,といったことを実現しようとした場合,とたんに設計が難しくなります。

川島:デバッグの工程数も増えますしね。ナムコでは「ヴィーナス&ブレイブス〜魔女と女神と滅びの予言〜」という,プレイステーション2向けのネットワーク対応RPGをリリースしていますが,このとき,デバッグの約20%がネットワーク関連でした。正直,開発サイドからすればディスクメディアのほうが楽ですよ(笑)

国森:ただ,ユーザーからすれば,ネットワーク経由で,ゲームがより面白くなるのは魅力的ですよね。ビジネスモデルとして成り立つのであれば,ネットワークを活かしたゲーム設計というのは,挑戦していく価値が十分あると思っています。

川島:実はフレームシティでもXbox Live!で1週間に1本ミッションを提供します,1年間。いや,ほんと,しんどいですけど(笑)。
 ただ,ゲームソフトとしてのライフサイクルを考えると意味があるんですよ。「そんな配信なんかしないで,ディスクメディアに突っ込んで一括売りしちゃえよ」という声もありますけど,定期配信すれば,ユーザーさんにゲームを長くプレイしてもらえます。新しいコンテンツを提供して,すぐプレイしてもらえることになると,ユーザーとの距離が縮まるという感覚も少しありますね。

(善):ゲームって"生もの"的な要素がありますからね。古くなると,面白いゲームであってもセールスは落ち込んでいきます。でも,常に新しいプレイが提供されていれば,いつでも新鮮さを維持できるわけで。

国森:現物主義というか,ネットでデータもらうより,「ディスクを所有している」感覚が,まだ重要視される傾向にありますから,そこが難しいところです。ただ,ネット配信が主流になって,新しいことが重要視されるようになると,徐々に考え方が変わっていくかもしれませんね。

これからゲームはどうなるのか

(善):一般のゲーマーにとって,次世代機のゲームが出てくるたびに一番気になるのは,これまでとどこが違うのか,何が遊べるのか,というところです。
 ソニーは長期戦に耐えうる超ハイスペックのプレイステーション3で攻めてきますし,Microsoftは順当な進化形態に収めつつ,ネットワーク対応の優位性を強調したXbox 360を出してきますね。任天堂は,スペックはナゾですけども,変なコントローラで「何か変わったことが出来そう」という,期待を煽ってくれています。
 これからのゲームは一体どうなっていくんでしょうか。

川島:これは,よく人に話すことなんですが,ゲーム機とゲームって映写機と映画の関係に似ているんです。
 それこそ1900年代初期には,「写真が動く」ということで,映写機そのものに人々の注目が集まりました。でも,映写機が進化するにつれて,映写機そのものに夢中になる人は減っていきます。なぜかといえば,一般の関心は,映画の内容の面白さに移るからです。もちろん,映写機マニアは今もいますけどね(筆者注:すみません。筆者はプロジェクタマニアです)。
 ゲームが映画より優れているところは,その内容を自ら疑似体験できて,終わったときに達成感を味わえるところだと思います。開発者としはここを大事にしていきたい。プレイステーション3やXbox360は,ようやく,こういった「体験」を提供できるようになってきました。だからこそ,体験を提供することに注力することが,これからのゲームとして大事なことだと思うんですよ。フレームシティは,これを踏まえて開発してきました。

国森:そう,だからフレームシティはハードボイルド"エクスペリエンス"(体験)なんですね。何年後かは,アクションアドベンチャーという言葉の変わりに「〜エクスペリエンス」みたいなジャンル付けが当たり前になっているかもしれませんよ。フレームシティはその一番乗りなワケです(笑)。

まるで映画のような,派手な演出。こういった映画のような世界を"体験"できるというわけである

(善):最後の質問です。4GamerはPCゲームメディアなので,どうしても聞く必要があるのですが,フレームシティのPC版が出る予定はありますか? 6万円するグラフィックスカードは買えるけど,Xbox 360は高いから買えないという人が,4Gamerの読者には結構いるもので。

国森:技術的な観点からすれば,移植は全然可能ですねぇ。

川島:ただ,理屈じゃない部分があるんですよ。次世代機選びって,結局,投票活動じゃないですか。「俺はMicrosoftに賭ける,私はソニーを信じる」みたいな。Xbox 360を選んだユーザーが,Xbox 360に思い入れがないはずはない。となれば,彼らをあまり裏切りたくないというのはあるんですよね。

国森:ただ,ゲームの作り手側の立場としては,苦労して作り上げた作品ですから,多くの人にプレイしてもらいたい。これが本音です。もう,これは絶対にそうなんです。

(善):UE3はプレイステーションの開発プラットフォームとしても,半ば標準的なものとして提供されると決定しましたからね。PC,プレイステーション3用と提供する,マルチプラットフォームは,技術的には可能なわけですね。

川島:実際,可能ですよ。あとは,マーケティング的な問題だけですね。

 PCを含めたゲームプラットフォーム,ハードウェアが進化していくと,行き着くところは技術的な均衡になるだろう。
 それまでは「スプライトの表示数が多い」「ポリゴン数が多い」などなど,そのハードウェアの特徴を活かしたゲーム造りをしていればよかった。しかし,次世代ゲームハードは,PCも含めてプログラマブルシェーダ3.0(Shader Model 3.0)で足並みが揃うわけで,「あのハードではできない,こんなことがこれならできる!」といった個性は発揮しづらい。CPUも,Intel&AMDとIBM,ソニーという違いこそあれ,クロスプラットフォーム開発が可能な今となっては大した問題ではないし,少なくともデュアル/マルチコアCPUを採用しているという点では共通している。

 要するに,次世代ゲームプラットフォームの機能格差はほとんどないわけで,すでに機能的な均衡状態は生まれつつあるのかもしれない。
 今回は,フレームシティをある意味"だし"にして,UE3の現状を報告しようと思っていたわけだ。だが,インタビューを終えてみて,UE3(などのツール)を使って,どんな目新しい一発芸を見せるかではなく,UE3をあくまで一つの道具と割り切って,「何をユーザーに体験させるか」を自前で作り上げようと努めるナムコのスタンスが,強く印象に残った。
 機会があれば,ぜひとも「フレームシティ」をプレイして,これからのゲームの進化の方向性を肌で体験してもらいたいと思う。