【連載第17回】あなたとわたしのPCゲーミングライフ!!


佐藤カフジの「PCゲーミング道場」


NVIDIAが提案する、物理エンジンとGPGPUの素敵な関係
「PhysX」と「APEX」で物理ゲーミングの夜明けがやってくる!?


色々な意味で業界の「最先端」を走る、PCゲーミングの世界。当連載では、「PCゲームをもっと楽しく!」をコンセプ トに、古今東西のPCゲームシーンを盛り上げてくれるデバイスや各種ソフトウェアに注目。単なる製品の紹介にとどまらず、競合製品との比較や、新たな活用法、果ては改造まで、 様々なアプローチでゲーマーの皆さんに有益な情報をご提供していきたい。



 ■ NVIDIAの取り組みを通して「次世代ゲーミング」の姿が見えてくる

今回のテーマは物理エンジンが実現する新たなゲーミングの世界

 PCゲーミングに関するハードウェアやソフトウェアの話題をノンジャンルでお届けする本連載だが、今回はちょっと趣向を変えて、ハードウェアメーカーを主役としてお届けしよう。対象はグラフィックスチップの大メーカーとして有名なNVIDIAだ。

 なぜ今、NVIDIAなのか。その理由を簡単に説明しておきたい。

 理由を説明する前に、まず、PCゲーミングを取り巻く今日の状況をまとめておこう。Windows 7とDirectX 11がデビューして、数年ぶりにPCの買い替え需要が高まりつつある昨今だが、NVIDIAと競合するAMD傘下のグラフィックスチップメーカーATIは、DirectX 11にフル対応するビデオカード「Radeon HD 5000」シリーズをいち早く出荷開始し、ゲーマーの先行投資欲を刺激している。

 その一方、NVIDIAのDirectX 11対応はと言うと、現時点では新GPUチップ「Fermi」の基本情報を公開したばかり。実際のビデオカード製品が出てくるまでにはもうしばらくの期間がかかる見込みで、一見、NVIDIAは次世代のゲーミング環境の提供に乗り遅れたようにも見える。次世代の携帯ゲーム機に使われると噂の低消費電力プロセッサー「Tegra」シリーズの存在も気になるが、まだまだゲーミングシーンに関連する話題は少ない。

NVIDIA「APEX」により制作された布モデルの切断デモ

 しかし、ハードウェアが提供されても、ソフトウェアが無いことには新しいゲームが実現されない。その点に注目すると、NVIDIAは既にかなり先を走っているのである。それを代表するのが、GPGPUの開発プラットフォームである「CUDA」であり、CUDAベースの物理エンジンである「PhysX」であり、PhysXを使ったゲームの開発を支援する「APEX」の存在だ。

 CUDA、PhysX、APEXのそれぞれについての詳細は次章以降に述べたいと思うが、簡単に言うとCUDAは「GPGPUの開発言語/プラットフォーム」、PhysXは「CUDAベースの物理エンジン」、APEXは「PhysX対応ゲーム開発支援フレームワーク」である。つまり、これらは全てハードウェアではなくて、ソフトウェアなのだ。

 NVIDIAはこういった開発プラットフォームをいち早く提供することによって、多くの先進ゲームタイトルが新たな表現能力を獲得する試みを支援している。例えば、PhysXを正式採用したゲームエンジン「Unreal Engine 3」に始まり、最近ではエレクトロニックアーツの「ミラーズエッジ」PC版、EIDOS Interactiveの「Batman: Arkham Asylum」PC版といったタイトルで、PhysXによる物理効果を導入したゲームが既にエンドユーザーの手に届いている。

 このほか、NVIDIAでは3Dステレオスコピック映像を可能にする「NVIDIA 3D Vision」、CUDAベースのレイトレーシングエンジン「OptiX」など、多方面にゲーム開発のトレンドを押し広げつつある。事実上標準の新ゲーム開発プラットフォームであるDirectX 11の定着を待たずして、PCゲームのステージを次の段階に引き上げようとしているかのようだ。

 こうして、NVIDIAはもはや一口にグラフィックスチップメーカーと呼ぶことのできない企業になっている。単に高性能なハードウェアを提供するだけでなく、新たなゲームを実現するための開発ソリューションを提供する、総合的なプラットフォームベンダーとしての姿。だからこそ今、NVIDIAが面白いのだ。

 本稿ではゲームと物理エンジンの関係に焦点を当てて、NVIDIAが今やっていること、今後やろうとしていることを明らかにしていこう。今後のPCゲーミングシーンはもちろん、据え置きゲーム機の将来を予想する上でも、避けて通ることのできない話題となるはずだ。



■ ゲーム業界界隈で「PhysX」が圧倒的な注目を集めるワケ

NVIDIAの技術フェロー、風間隆行氏
コンテンツビジネスデベロップメントディレクター、ショーン・ボナム氏

 というわけで今回は、NVIDIAのオフィスにお邪魔して「PhysX」や「APEX」にまつわる話を色々と聞いてきた。対応してくれたのは国内の技術サポートを担当する風間隆行氏と、国内ゲームデベロッパーとの協業体制を確立する立役者であるショーン・ボナム氏。

 本題に入るための前提として、まず昨今のハイパフォーマンスコンピューティング分野のホットトピックである、「GPGPU」と物理エンジンの関係について現状をまとめておこう。

 GPGPUとは、「General Purpose computing on GPU」、すなわちGPUの計算能力をグラフィックス以外の汎用的な目的にも使おうというアイディアだ。もともとグラフィックスのレンダリング目的に使われてきたGPUは、超並列プロセッサとして成熟してきており、単純な内容に限ってはCPUを遥かに上回る計算能力がある。そのパワーを有効活用しようというのが、昨今のコンピューティングにおけるトレンドになりつつあるのだ。

 これまでGPGPUのAPIとしては、NVIDIAの「CUDA」、AMDの「ATI Stream」といったハードウェアベンダー毎の開発環境が存在した。だが、これらは当然「ベンダーの異なるハードウェア上では動作しない」という制限があり、多くのゲームメーカーが本気で取り組むにはリスクが大きすぎた。もちろん、他に先行してきたNVIDIAのCUDAのほうがソフトウェア資産の面で有利なことは事実で、動画のエンコーダーなどいくつかの実用系ソフトウェアで採用されているが、それでも、ゲーム開発に使おうという酔狂なメーカーは出てこなかったというのが実情だ。

 このため、「ハードベンダーに依存しないGPGPU APIの共通規格」を時代が要求していた面がある。そこで登場してきたのがオープン系の開発環境である「OpenCL」と、Windows向けの開発環境であるDirectX 11に含まれる「Direct Compute」だ。いずれも対応ハードウェアのベンダーを選ばない共通規格であることは違いないが、DirectXに親しんだゲームデベロッパーにおいては、より親和性が高く、マイクロソフトからもイチオシされているDirect Computeが事実上の標準になりそうな情勢である。


・GPGPUの活用先の第1候補は「物理エンジン」

2004年に登場した「Half-Life 2」。「HAVOK」エンジンの名を高らしめた傑作FPSで、物理シミュレーションソフトとしても秀逸なゲームだった。現在のPCにはこれの何百倍もの規模の物理を処理するポテンシャルがある

 というわけで、DirectX 11とDirect Computeの登場により、GPGPUをゲームに応用するための開発プラットフォームは整ったように見える。だが、「環境は整った。でも、GPGPUで何が実現するんだろう?」という問題に注目しない限り、ことの本質が見えてこない部分があるのだ。どんなに凄い機能も、ゲームに実装されなければ我々にとっては意味がないからだ。

 GPGPUとはもともと、CPUで行なうには単純だが、量だけは膨大になるという計算処理を、そういうのが得意なGPUに任せようというアイディアだ。この手の処理内容というのは、ゲームにおいてはそんなに多くない。代表的なものは、もちろんグラフィックスのレンダリング。そして現実的な応用として物理演算やAI処理が挙げられる。

 このうちAI処理は、処理内容が目的に応じてとても広がりがち。ストラテジーゲームとFPSとスポーツゲームで求められるAIの内容が全く違ったものになると考えれば、その理由がわかるだろう。GPUが得意な処理もあれば、ある種の処理にはCPUでしかできないような仕事も含まれてきたりして、GPUオンリーで処理できる内容は割と限られてくる。

 一方、物理演算は「単純な計算を大量に行なう」というGPUの特性をフルに活用できるジャンルである。何しろ、一見複雑に見える物理オブジェクトの動きも、細かく分けていけばごく単純な物理法則に帰結できるからだ。したがって、GPGPUの応用としてまず物理エンジンをと考えているデベロッパーはごく一般的だ。

 


・物理エンジンとGPGPUをめぐる奇々怪々。
 結果的に「PhysX」が現時点で唯一のGPGPU対応エンジンに

NVIDIA公式サイト上の「CUDA ZONE」。様々な開発者による、CUDAを活用したソフトウェアのオープンな発表場となっている

 とはいえ、「Direct Computeを使ってウチ独自の物理エンジンを作ろう!」とは簡単にはならないのが現実。なぜかと言うと、高性能な物理エンジンを作るというのはゲーム業界の中でかなりの特殊技能に属し、独特のノウハウの塊みたいな世界であるためだ。

 NVIDIAの風間氏はこう指摘している。「一言に物理というと、ものすごく範囲が広いんです。20年前の2Dゲームの衝突判定、ジャンプする動きも、言ってみれば物理です。そういう意味では、世のなかにはゲームタイトルの数だけインハウス制作の物理エンジンがあります。ところが、そういう物理エンジンは、ある特定の目的に特化しているからこそ成立するのであって、1から10まで物理でやろうとなったときにはもっと高度で本格的な物理エンジンが必要になります。だけど、それを作れるエンジニアは本当に限られているし、時間とお金がかかります。今のご時勢、そんな余裕のあるデベロッパーさんはほとんどないのが実情です」。

 そこで現在、ゲームデベロッパーの多くが導入を考えている、あるいは既に導入を果たしているのがミドルウェアとしての物理エンジンだ。

CUDA/PhysXによる流体物理のデモ。6万個のパーティクルにより流体がシミュレートされている
PhysXは、「Gamebryo」や「SpeedTree」、「NaturalMotion」といったミドルウェアの標準物理エンジンに採用されている

 これまでに主流となっている物理エンジンのミドルウェアは、「Half-Life 2」等のビッグタイトルに採用されたことで一挙にスタンダードとなった「HAVOK」と、後発ではあるが使いやすいAPIと無料の基本SDKで一気に勢力を広げた「PhysX」の2つ。いずれも独立資本でスタートしたミドルウェアだが、現在では「HAVOK」はCPUメーカーのIntel傘下となり、「PhysX」はNVIDIAのリソースとなった。

 そして、その立ち位置の違いが「HAVOK」と「PhysX」の立場を激変させることになった。物理エンジンをGPGPUに対応させるという、ある意味当然の帰結は、GPUメーカーであるNVIDIAにより「PhysX」でひときわ速く実現し、GeForce 8800以降で動作するCUDAプラットフォームに対応した(弊誌関連記事)。これは、2009年初頭には早くも「ミラーズエッジ」PC版など実際のゲーム製品で活用されている。

 一方、「HAVOK」はIntelの子会社という状況が一種の足かせとなり、GPGPUへの対応は遅れている。ATI Radeonシリーズへの対応がライバルに対する「差別化」といえるが、AMD/ATIとの戦略的提携を結んでようやく、NVIDIAが「PhysX」のCUDA対応を果たした1年近くも後に「OpenCL」で実装したGPGPU対応の技術デモを行なったという状態だ。

 だが、「OpenCL」はGeForceでも動く規格なので、AMDにとってはそれほど面白くないに違いないし、GPUブランド競争の影でしばらく蚊帳の外を演じなければならないIntelは、もっと不愉快だろう。という奇々怪々な勢力争いの結果、現在ゲームデベロッパーの熱い注目を浴びているのは、唯一のGPGPU対応物理エンジンとして実際にリリースされているNVIDIA「PhysX」の方なのだ。

 実際、NVIDIAでお話を伺ったショーン・ボナム氏は、現在「日本でPCや高性能ゲーム機向けにゲームを開発しているほとんどのデベロッパーの方から、何らかの形でコンタクトを得ています」と語っているほど。同じプレゼンテーションを何度やったかわからないというレベルだそうだ。

PhysXは2008年夏の時点でCUDA対応、すなわちGPUによるアクセラレーションを実現していた。剛体・軟体・流体といった物理オブジェクトを、GeForce 8800以降のGPUで高速に処理できる。上記は当時の技術デモからのスクリーンショット

CUDA版PhysXの対応ゲーム例のひとつであるPC版「ミラーズエッジ」。PhysXを利用すると、キャラクターと相互作用する破片や布系のオブジェクトが多く登場するようになり、ゲームワールドが賑やかな感じになる。とはいえ、活用の度合いはまだまだ限定的と言える



■ エンジンだけではダメ? 実はとても大変な物理処理のゲーム実装
 「Batman: Arkham Asylum」で「APEX」の効能をチェック!

物理エンジンによる効能は期待以上のこともあるが、その実現は開発者の労力を大きく要求するため、現時点では限られたタイトルの活用に留まる(画像はHAVOKを採用した「レッドファクション:ゲリラ」)
現時点では「部分的に」物理処理を活用しているゲームの成功例が多い(画像は「Empire: Total War」、物理エンジンはCreative Assemblyのオリジナル)

 ゲーム全体のパフォーマンスレベルを一挙に上げる可能性があるGPGPUの活用は、次世代のゲームシーンを語る上で絶対に外せない題材だ。そして上記までに述べたように、いちはやくGPGPUに対応した物理エンジン「PhysX」は、GPGPUの具体的な応用例として注目するに格好の素材である。

 自社のゲームタイトルを他社のものと差別化したがっている多くのゲームデベロッパーは、益々物理エンジンへの関心を深めている。その流れがあるのは確かなのだが、ハードなゲーマーならご存知の通り、現時点では物理エンジンがゲーム全体を支配するほど徹底的に使われている例は少ない。

 海外ゲームの世界では「Half-Life 2」を皮切りに、物理処理をゲームプレイ要素に取り入れようとする流れが本格化した。だが、物理的な挙動というのは、ゲームにうまく取り入れるのが難しい面もある。剛体、軟体、流体といったオブジェクトの挙動は、ある意味で予測しづらく、ゲーム全体を支配するほど全面的に取り入れれば、やや大味なゲーム内容になる傾向が強い。つまり、物理の導入がゲームの魅力に直結するわけではないのだ。「マーセナリーズ 2」、「レッドファクション:ゲリラ」あたりがその例といえるだろう。

 それでもある程度、部分的に物理処理を導入することでゲームの面白さにさらなる深みを加えることができることも確かだ。昨今のレースゲームでは「Race Driver: GRID」のように車以外にも物理オブジェクトを導入して、アクシデント要素を劇的に面白くしている例もあるし、ストラテジーゲームでも、「Empire: Total War」では船舶のダメージモデルに物理処理を使い、バリエーション豊かな海戦を実現している。

 物理処理を取り入れるのが難しい、ということにはもうひとつ理由がある。それは、単純に物理オブジェクトをゲームに導入する手間が無視できない、ということだ。すぐれた物理エンジンが用意されていても、例えばオブジェクトの破壊を表現しようとすれば、破壊前のデータ、破壊後のデータ、どういう壊れ方をするかなど、沢山の情報をあらかじめ埋め込んでおく必要があって、プログラマーもアーティストも大きな負担を強いられるのだ。

 来春に発売が予定されているノンリニア破壊(物理エンジンによりオブジェクトが複雑な壊れ方をする仕組み)を大胆に取り入れた「BattleField: Bad Company 2」が派手な物理処理を取り入れた代表例となるが、あそこまで緻密かつ複雑な壊れかたをするゲームはEA DICEのような大規模デベロッパーでなければ実現が難しい。

 


・物理エンジンの活用を促進する開発フレームワーク「APEX」

「APEX」の基本アーキテクチャー。オーサリングツールとランタイムの2パートで構成される開発フレームワークだ
「APEX」によって支援される代表的な物理処理の例
「APEX」による壁破壊デモの映像。複雑な壊れかたをする壁には細かな属性や分割データが配置されているが、「APEX」はそのデータ作成をかなりの程度自動化できる

 さて、物理処理と一口に言っても、その内実はとても幅広い。サッカーボールが転がるだけでも物理処理だし、複雑な形状の建築物が無数の破片を飛び散らせながら爆破解体されるのも物理だ。NVIDIAの風間氏が言うように「単に『物理』と言うと、まるで『CG』と言うのと同じくらい広い意味がある」のだ。

 その幅広さがあまりにもゲーム開発者に負担をかけてしまうので、本格的な物理エンジンの導入をためらっているデベロッパーは少なくないという。だがそこで、ゲームでよく使われるような典型的な物理処理のパターンを、テンプレート的に簡単に作れるような支援機能があれば、その状況は変えられるのではないだろうか。

 そこで現在、NVIDIAが用意しているソリューションが「APEX」だ。これは、エンドユーザーがそのまま利用するものではなく、ゲームの開発者が「PhysX」をゲームに取り入れる際に利用する、ゲーム開発のためのフレームワークである。

 「APEX」は2つのパートで構成される。物理処理に使われるアート・アセットをセットアップするためのオーサリングツールと、それをゲーム中で動かすためのランタイムライブラリだ。これにより、ゲーム開発者はオブジェクトの破壊表現、森などの植生表現、衣服などの布表現、あるいは煙幕などの流体表現を、あまり悩まずにゲームに取り入れることができる。

 特に「APEX」が優れているのは、処理スケールを内部的に調整できる機構を有していること。例えば壁を破壊する表現をゲームに取り入れた際、CUDA非対応のハードウェアであれば、CPUで処理できるレベルの破片数に抑えて、ゲームが重くならないようにする。あるいは高性能のGeForceチップ搭載PCであれば、あらん限りの力で大量の破片を飛び散らせる、ということが、プログラマーが特に何もしなくてもできてしまうというのだ。

 アーティストの負担もかなり楽になる。壊せる壁や木、キャラクターに着せる服といったオブジェクトのジオメトリデータに対して「APEX」のツールプラグイン上で「これは布です」、「これは壊れる壁です」、「これは柔らかい物質です」といった抽象的な情報を付け加えれば、あとは「APEX」のオーサリングツールが勝手に物質の細かい属性を生成し、壊れるオブジェクトなら壊れ方、分割面を自動生成する。あとはゲームに放り込むだけで、プラットフォームの処理能力に対して適切にスケールされた物理処理が完成するというわけだ。

 ボナム氏によると、現在この「APEX」はベータ段階で、NVIDIAとパートナーシップを結んでいる一部のデベロッパーのみが試験的に利用している段階である(その中にはカプコンのような国内メーカーも含まれている)。一般デベロッパー向けの正式リリースは来春を予定しており、その際にはプレイステーション 3/Xbox 360向けのバージョンも用意されるようだ。


「APEX」により制作された、車が粉塵を巻き上げる「Turbulence」デモより。50万個のパーティクルによってリアルな粉塵の動きを表現している。「APEX」ではこういった物理表現を、開発者が大きな労力を割くことなくゲームに導入することができる

「APEX」のオーサリングツールでは、オブジェクトに抽象的な属性を与えるだけで、細かな面分割やLOD情報付けはツール側で行なってくれる。そうして制作したデータをゲーム側に導入すれば、ターゲットマシンの能力に合わせた物理表現が自動的に行なわれる寸法だ。物理エンジンを使ったゲーム制作の敷居がぐっと下がりそうである


・「APEX」を使って制作された初のフルプライスタイトル「Batman: Arkham Asylum」

「Batman: Arkham Alylum」。バットマンならではの多彩なアクションが楽しめる、ボリュームたっぷりのアクションアドベンチャーゲームだ
PhysXモードでは大量の物理オブジェクトが宙を舞い、ゲームの雰囲気がまるで変わる
濃密な物理オブジェクトのため視界が変わり、ゲームプレイ内容にもかなりの影響が出る

 NVIDIAがパートナーシップを結び、「APEX」を先行して提供したタイトルにEIDOS Interactiveの「Batman: Arkham Asylum」がある。このタイトルはプレイステーション 3/Xbox 360/PCのマルチプラットフォームで、PC版においては「APEX」を全面的に使って実現した「PhysXモード」が存在する。

 「ミラーズエッジ」のPC版でもPhysXは使われていたが、「APEX」により開発を効率化した「Batman: Arkham Asylum」の物理処理ぶりは、なるほどさらに徹底的だ。まず、当然のこととしてPhysXアクセラレーションをONにすると、壁から崩れ落ちる破片、破壊可能な床といった剛体のシミュレーションがふんだんに行なわれるようになる。その規模たるや、ゲーム世界が通常よりちょっと賑やかになるというレベルではなく、ゲームの雰囲気が全く変わってしまうほどの威力だ。

 また、ゲームをプレイして最初に気づくのが、地面に散らばっている紙片の存在だ。PhysXを使わない場合は「地面に張り付いたただのテクスチャ」であるところ、PhysXを有効にすると、バットマンがアクションを起こすたびに空気の流れによって巻き上げられ、宙をひらひらと舞うようになる。それも大量に。

 他にも、「APEX」のキモであるオブジェクトの大規模な破壊表現が導入されているシーンもある。巨大なボスと対面するところ、目前の壁が細かい破片に砕けながら崩れ落ちていく。他に面白いところとして「動的な煙の表現」を見ることができる。これまでのゲームならただのフォグだったものが、本作のPhysXモードでは、フォグがバットマンや他のキャラクターの動きによって影響を受ける。その結果、フォグを「かきわけられる」のだ。

 これらの「Batman: Arkham Asylum」における「APEX」活用の例は、動画にまとめたので下記に掲載しよう。大量の物理オブジェクトがあくまでも自然に配置され、ゲームのイメージをガラリと変えてしまっていることに、読者の皆さんもご賛同いただけることと思う。CUDA対応のグラフィックスカードをお持ちなら、デモ版で確かめることもできる。NVIDIAの公式サイトにあるダウンロードページに行ってみよう。


【「Batman: Arkham Asylum」PC版におけるPhysXデモ】


「Batman: Arkham Asylum」では、CUDA/PhysXでアクセラレーションされた物理処理の可能性を、筆者の観点では少しだけ、垣間見せてくれるように思える。今後「APEX」が正式にリリースされれば、こういった物理処理をこれまでになく手軽に、多くの開発者が実装できるようになる見込みだ



■ 「将来的にもGPUはCPUにならない。GPUならではの機能を提供」
 NVIDIAが目指すのはGPUメーカーならではの開発ソリューション

「新世代のゲームをデベロッパーの方々と一緒に作っていきたい」と語る、風間氏とボナム氏

 GPGPUテクノロジーの登場により、ゲーミングPCが持てるコンピューティングパワーは益々増大の一途をたどりつつある。その計算力の使い道のひとつとして、ゲームの将来に一味加えてくれそうな代表格である物理エンジン。NVIDIAの「PhysX」はいち速くGPGPUに対応することで、既に将来への備えを整えている。

 「APEX」の提供が始まれば、国外・国内を問わず、物理エンジンを全面的に活用したゲームタイトルがもっと一般的になっていくだろう。風間氏はこれを「物理エンジンを使ったゲームの夜明け」と表現した。それはおそらく、2010年の上半期ごろに最初の収穫期を迎える。

 それを踏まえ、今回NVIDIAに取材してみて感じたことがある。もはやハードウェアベンダーの役割は、単に「テクノロジーを提供する」だけでは不十分であり、「テクノロジーを利用するためのソリューションを提供する」というものになりつつある、ということだ。

 開発技術は複雑化し、ゲーム開発のコストの高騰は止まらない。それでも益々、ユーザーは高度な表現、これまでにないゲームプレイを求めている。それを満足させられるのは、ごく一部のトップゲームメーカーだけで良いのだろうか? もっと多くのゲーム開発者にチャンスが開かれるべきではないだろうか?

 こういった問題を解決するために、ハードウェアベンダーはソフトウェアベンダーでもある必要が出てくるわけだが、そういった姿勢は、現在のNVIDIAに如実に現われている。NVIDIA広報担当によれば、現在NVIDIA全体に在籍する全社員のうち、エンジニアが6割で、実にそのうちの半数がソフトウェアエンジニアであるそうだ。ソフトウェア部門はビデオカードのドライバーだけ作っていればよかった時代もあったというが、今では様々な開発ソリューションを提供するために忙しく動き回っているようだ。

 では、より複雑なソフトウェアをGPU上で動作させるために、今後GPUはますます、CPUのような汎用プロセッサに近づいていくのだろうか? 大きな流れとして、まさにそれを予想するEPIC GamesのTim Sweeney氏のような人物もいる。素朴な疑問を風間氏にぶつけてみた。

 風間氏はこう応える。「それはないでしょう。少なくとも、私の知る範囲ではありえませんし、そういった動きもありません。GPUは特定の目的に限定されたハードウェアであることが弱点でもありますが、だからこそCPUには到底不可能な超高速なコンテキストスイッチが可能であり、CPUには不可能なスピードで大量の処理ができるんです」。

 「CPUは、僕の表現で言うならば『現場監督』です。何でもできる工場のラインが1つあって、それを現場監督が指揮して色々と複雑なものをやらせている。これまではそのラインをどんどん速く回そうということになっていて、それで限界が来たので、じゃあラインを増やそうということになっています」。

 「それに対しGPUは、じゃあ現場監督は要らないから、ラインを無数に作って『作業員』を大量に並べればいいじゃないか、というのが発想です。それで1ラインあたりの性能はCPUより低いんですが、数がものすごいので、単純な作業ならものすごいスピードでやれる。我々はこのメリットを最大限に生かしたいと考えているので、誰かが言うようにGPUの中に『現場監督』を入れて、メリットを消したいとは思いません」。

 だから、今後もCPUとGPUの住み分けは続く、というのが風間氏の主張だ。その上で、NVIDIAとしては、「多くのゲーム開発者の人々と共に、新たな世代のゲーム表現を作り上げていきたい」というのが、風間氏、そしてボナム氏の共通する見解だ。

 NVIDIAではGPGPUの応用として物理エンジン分野を、開発ソリューションも含めて完成に持っていこうとしている。これは、競合他社に比べ、非常に早いテンポでの進捗と言える。この流れは他の分野、例えばAI、レイトレーシングなど将来的な分野にもつながっていくだろう。実際NVIDIAではGPGPUのレイトレーシングエンジン「OptiX」を既に発表しており、さらにはそのアルゴリズムをAIに応用するアイディアを示唆している。

 このことから次世代のゲームシーンでNVIDIAが支配的な地位に立っている可能性は高いが、是非とも、他の陣営も各々の持ち味を生かし、競争を盛り上げて、PCゲームの凄さ、面白さに貢献してもらいたいところだ。



(2009年 10月 30日)

[Reported by 佐藤カフジ ]