2008年9月9日より3日間、昭和女子大を会場にして、日本最大級のゲーム開発者会議「CEDEC 2008」が開催された。

CEDECは最新の3Dグラフィックス技術や次世代のゲーム開発技術までを取り扱ったカンファレンスであり、今年は著名人の講演や、かなり具体性を持った次世代技術の発表が行われ、非常に注目度の高い内容となった。

本誌では会期中行われたセッションのうち、特に興味深かったものについて紹介していくとしよう。

まずは、Unreal Engineの設計者であり、長きにわたって最新ハードウェアと最新ソフトウェア技術との関係を現場で見続けてきたEPIC GAMESのTIM SWEENEYの講演「未来のゲーム開発テクノロジー」からレポートしたい。

TIM SWEENEY氏が語るコンピューティング未来像

基本的にゲームは、これまでの多くのソフトウェアがそうであったように、単発の完結したプログラムであった。ゲームのスタイルが「プレイヤーからの入力があって、これに呼応して敵を動かし、シナリオを進め、映像を表示してサウンドを鳴らす」というようなゲームプログラムの構造の共通点を見出し、これを汎用化してゲーム制作の効率を上げようとして生まれたのが「ゲームエンジン」という概念だ。

「ゲームエンジン」というキーワードは、場合によってはゲームを作り上げる周辺のツールセットまでを含むことがあり、これを広義には「フレームワーク」と呼ぶことがある。

新しいハードウェアに対しては、その突出した機能をゲームで利用しやすいソフトウェアモジュールとして実装するゲームエンジンもあり、このタイプのゲームエンジンは「ミドルウェア」としての側面も持つ。

こうしたフレームワーク的、ミドルウェア的なゲームエンジンの設計開発に1990年代半ばからいそしんでいた人物が2人いる。それがid soft wareのDOOMシリーズの開発者であるJOHN CARMACK氏、そして今回CEDECでの講演を担当したEPIC GAMESのTIM SWEENEY氏だ。1990年代中盤では「先取りしすぎた」感もあった彼らの仕事だが、10年経った今では、そのゲームエンジンという概念の必要性が広く認められており、彼らの選択が全く正しかったことが証明された。遡って考察すれば、その時点から見てのハードウェアとソフトウェアの双方の進化の方向性を的確に予測できていなければ、出来なかった舵取りだともいえる。

そんなTIM SWEENEY氏が、今回、CEDECで「未来のゲーム開発テクノロジー」と題して講演を打ち、2012年から2020年のゲームソフトウェアの形、3Dグラフィックスパイプラインの構造を語った。

EPIC GAMES,CEO兼プログラマ、TIM SWEENEY氏

Unreal Engineの歴史

まず最初にTIM SWEENEY氏のEPIC GAMESでの功績を振り返ろう。

最初に、彼が設計したのは今から12年前の「Unreal Engine1.0」(UE1)で、この時にはGPUが登場する前だったこともあり、3DグラフィックスはCPUベースのソフトウェアレンダリングだった。開発チームがとても小規模だっこともあり、開発コードの80%はTIM SWEENEY氏自身の手によるものだったと振り返っている。UE1の代表作はそのエンジン名の由来にもなっている「Unreal」で、プラットフォームはPCに限定されていた。

UE1は今から12年前、GPU登場前に開発された。補足すると、途中でGPUアクセラレーションに対応する改変が行われている

その後、開発されたのが「Unreal Engine2.0」(UE2)で、GPUが確固たる存在となった2000年以降に実用化され、本格的なGPUベースのグラフィックスエンジンが実装された。UE3は多様なプラットフォームにも移植され、PCの他、PS2、Xbox、ゲームキューブなどの家庭用ゲーム機向けのバージョンも提供されている。UE2は多くのゲームスタジオで採用され、各スタジオで多様な拡張版が開発されたことでも有名だ。UE2の本来のグラフィックスエンジンはDirectX 7世代のハードウェアT&L(ジオメトリ・アクセラレーション)までの対応であったが、各ゲームスタジオではこれをプログラマブルシェーダに対応させて利用するところも出現した。独自拡張版UE2ベースの著名作としてはUBI SOFTの「スプリンターセル」シリーズなどがある。

UE2は今も活用しているスタジオがあるほどで、UEシリーズの歴史では最も長く活用されたゲームエンジンと言われている

そして現行の「Unreal Engine 3.0」(UE3)が登場となる。グラフィックスエンジン部はDirectX 9世代のプログラマブルシェーダに完全対応したものとなり、UE2まではシングルスレッド設計だったランタイムエンジンコードもUE3では基本6スレッドのマルチスレッド設計へと進化している。対応プラットフォームは「マルチコアCPU+DirectX 9世代(以降)GPU」を搭載したPC、Xbox 360、PS3となっている。UE3で注目すべきは、エンジンそのものが最新ハードウェアに対応していることはもちろん、ゲームのシナリオ作成、カットシーン(ムービーシーン)制作、そしてシェーダオーサリングツールなどのモダンなGUIベースのツール群が提供されたところだ。特にアーティスト(デザイナ)達には難解とされた、プログラマブルシェーダを駆使してのマテリアル・デザインを、GUIベースで設計させる手法を考案した功績は大きく、他のゲームエンジンにも大きな影響を与えたとされる。

UE3は物理シミュレーションへの本格対応もなされ、その標準エンジンとしてAGEIA(後にNVIDIA) PhysXが選択されている

UE3ベースの最近作。日本でも「ラストレムラント」「ロストオデッセイ」がUE3ベースであることがよく知られている

なお、現在、EPIC GAMESでは、UE3採用の自社プロジェクトとして「GEARS OF WAR2」(GOW2)の開発が進められており、これについての簡単な紹介をTIM SWEENEY氏は行っている。

GOW2は15人のプログラマ、45人のアーティスト(いずれもピーク時)が2年間開発に従事したとのことで、予算は約13億円にも上り、EPIC GAMESのゲーム開発プロジェクトとしては最大規模のものだったと振り返っている。GOW2までの一連の自社のビッグプロジェクトでわかったことは、「優れたレンダリングフィーチャーよりも、使いやすいツール群の充実性の方が重要である」ということだそうだ。

GOW2プロジェクトは、25万行に上るC++とスクリプトコードからなり、一方のUE3は200万行に上るC++コードからなっているという。「200万行というと十数年前のOS並である」とTIM SWEENEY氏はUE3の規模の大きさをアピールする。GOW2ではメインのゲームエンジンがUE3なのは言うまでもないことだが、それ以外に20ほどの他社製のミドルウェアも組み込んで活用している。具体的にはOC3 Entertainmentの顔面アニメーションミドルウェア「Face FX」、IDV社の植物生成ミドルウェア「Speedtree」、RAD GAME TOOLS社の映像コーデック「BINK VIDEO」などの採用が挙げられている。

「EPIC GAMESはゲームエンジンメーカーだが、同時に我々もミドルウェアのユーザーでもある」とTIM SWEENEY氏は述べている。今や大規模なゲーム開発プロジェクトは、フレームワーク、ミドルウェアといったものの存在が欠かせないというわけだ。

「GEARS OF WAR2」は2008年11月発売予定のXbox 360専用タイトル