お気に入りタイトル/ワード

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

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

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

LINEで4Gamerアカウントを登録
[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2020/08/08 17:00

イベント

[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 オンラインイベントとなった「GDC Summer」で,ゲームデザイナーのジョン・ロメロ(John Romero)氏「初期のid Software:プログラミングの原則について」(The Early Days of id Software: Programming Principles)と題されたセッションを行い,id Software時代を振り返ると共に,そこで学んだゲームプログラミングの原則を紹介した。

ジョン・ロメロ氏(Romero Games公式サイトより)。ロメロ氏は,GDC Summerでもセッションを担当しているブレンダ・ロメロ氏と2012年に結婚し,現在,アイルランドに設立したRomero Gamesでゲーム開発を行っている。「DOOM」誕生25周年となる2018年には,「DOOM」の拡張パック「SIGIL」を公開した(関連記事
画像集#002のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

GDC Summer公式サイト


 1990年代の欧米ゲーム業界を知らない世代が増えているため,“ジョン・ロメロ”という名前を聞いたことのない読者も少なくないだろう。簡単に説明すると,ロメロ氏は,1991年に仲間と共に立ち上げたゲームメーカーid Softwareを舞台に,1993年の「DOOM」や1996年の「Quake」などのゲームデザイナーとして,FPS(ファーストパーソンシューター)というジャンルの確立に多大な貢献をした人物だ。
 一般には,ロメロ氏がFPSというゲームのデザインを行い,共同設立者の1人であるジョン・カーマック(John Carmack)氏がFPSのプログラムやゲームエンジンの概念を生み出したとされているが,id Softwareは当時のゲーマー達からロックスターのように扱われ,ゲーム業界の最先端で活躍したメーカーだった。

最初のロゴではないが,id Softwareという名前からこのロゴを連想するベテランゲーマーは多いだろう
画像集#001のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
 ただし,FPSジャンルの成り立ちについてはさまざまな意見もある。アメリカ国防省が資金を提供したARPANET(軍事/科学向けに使われたインターネットの先祖)でもプレイできた「Maze War」(1973年)をその源流とする説もあり,ゲーム産業の黎明期には,1980年に登場した「Battlezone」など,“FPS的なゲーム”はいくつか存在した。とはいえ,今でいうFPS,つまり「武器を持ってステージを動き回り,一人称視点で戦う」というタイプのゲームは,id Softwareの功績なしに語れず,初期には「FPS」という呼び名より,「DOOMクローン」のほうが一般的だったほどだ。


10代で海軍向けのソフトウェアを作ったゲーム少年


 ロメロ氏が生まれたのは1967年,カリフォルニア州の州都であるサクラメントに近いロックリンという,6000人ほどの町でのことだった。小学生の頃からゲームセンターに入りびたり,「スペースインベーダー」「パックマン」といったゲームに熱中するが,その趣味が高じて近くの大学に無断で出入りし,学生達にBASIC(プログラミング言語の1つ)を教えてもらいながら,大学の大型コンピュータに自分の作ったプラグラムを打ち込むなどして,プログラミングに慣れていったという。

古いデベロッパなどの話を聞くと,アメリカでは1970年代から地方の大学や高校に写真のようなコンピュータが行き渡っていたという
画像集#003のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 それを見たロメロ氏の母親が息子に,AppleのPC「Apple II Plus」を買い与えたため,大学に通うのをやめて自宅に籠り,プログラミングに明け暮れるようになった。20ほどのプログラムを作ったもののBASICに不満を覚え,アーケードゲームでよく使われていた6502CPU向けのアセンブリ言語まで習得した。高校2年生のときには空軍で働いていた母親の再婚相手と共にイギリスに引っ越したというロメロ氏。当地の高校にあったプログラミングコースに参加すると,その実力はすぐに広まり,アメリカ空軍のアグレッサー部隊(訓練において敵をシミュレートする航空隊)所属の民間人として,なにやら極秘の任務についたと語る。

 1987年にテキサス州に引っ越したロメロ氏は,「ウルティマ」シリーズで知られるOrigin Systemsに短期雇用される形でゲーム業界に入る。与えられた仕事は,見下ろし型視点のApple II向けRPG「2400 A.D.」をCommodore 64に移植するというものだったが,ロメロ氏はこの時点で74にもおよぶゲームを自作しており,移植という仕事には満足していなかったようだ。
 Origin Systemsを離れて「Might & Magic II」の移植作業を行ったり,Ideas from the Deepというメーカーを立ち上げたりしていたが,21歳の終わりにたどり着いたのが,ディスクマガジンを販売するSoftdiskというメーカーだった。

高校時代を過ごしたイギリスでは,空軍に雇われていたと語るロメロ氏。「極秘任務で詳しいことは言えませんが,嘘のような本当の話なのです」と言いながら,B-2ステルス戦略爆撃機の画像を見せた
画像集#004のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則


4人の仲間との出会い


 SoftdiskでOSなどを学びつつ,1年ほど仕事を続けたロメロ氏は1990年8月,「毎月新作ゲーム入りのディスクを郵送する」というサブスクリプションサービス「Gamer’s Edge」を思いつく。このサービスのためにロメロ氏が集めたのがジョン・カーマック氏と,同姓だが親戚関係はないエイドリアン・カーマック(Adrian Carmack)氏,そして,Softdiskの別部門で働きながら,ゲーム好きだったので就業後にロメロ氏のもとをしばしば訪れていたというトム・ホール(Tom Hall)氏だった。
 ジョン・カーマック氏がプログラミング,ロメロ氏がツールの制作,エイドリアン・カーマック氏がアート担当,ホール氏が何でも屋という役割だったが,この4人はそれぞれ10年近くゲーム作りを楽しんでいたという逸材で,このとき初めて,ほかの開発者達と共同作業を行うことの面白さを体験したとロメロ氏は言う。

Softdiskは,パソコン雑誌にフロッピーディスクを付けて販売するというスタイルの草分け的存在だったが,2016年に解散
画像集#005のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

当然ながら日の目を見ることのなかった家庭用パソコン向け「Super Mario Brothers 3」。Ideas from the Deepのロゴまでつけたデモからは,当時のゲーム業界のゆるい雰囲気も伝わってくる
画像集#007のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
 Gamer’s Edgeのための最初の作品「Slordax」を開発中,ジョン・カーマック氏が,ピクセル単位でスムーズにスクロールできるプログラムの試作に成功する。家庭用パソコンは1981年から存在していたが,それまで(家庭用ゲーム機などでは当たり前だった)横スクロールを可能にするプログラム技術はなかったのだ。カーマック氏とホール氏は,これをゲームにするため一晩徹夜し,「Dangerous Dave in Copyright Infringement」というマリオ風のデモを作り上げ,ロメロ氏の机に置いた。
 出勤したロメロ氏がそのフロッピーディスクをパソコンに差し込んでプログラムを立ち上げたとき,電気ショックに打たれたような驚きを感じたという。「この瞬間,id Softwareは生まれました。1990年9月20日のことです」とロメロ氏。
 その後約3週間にわたって作業を続けた彼らは,パソコン版「Super Mario Brothers 3」のデモを作って任天堂に送るが,採用は断られたそうだ。「まあ,当然なんですけどね」とロメロ氏は笑うが,ともあれ,その技術を利用したのが横スクロールアクションの「Commander Keen」シリーズだった。

Softdiskで「Gamer’s Edge」というサービスを開始したロメロ氏。ここからようやくid Softwareの物語が動き出す
画像集#006のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 ちなみに筆者が聞くところでは,この4人のほかにもう1人,プログラマーとしてレーン・ロース(Lane Roathe)氏がいたはずだ。彼は,ロメロ氏がOrigin Systemsを辞めたときからずっと行動を共にしていたほどの仲だったが,今回のセッションを含めて,彼がなぜid Softwareに参加しなかったのか語られたことない。ロース氏は「Commander Keen」の制作にも関わっており,“id Software”という社名も,ロメロ氏とロース氏が設立したデベロッパ,Ideas from the Deepの略称「IFD」からFを抜いたものだと言われている。

画像集#008のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
「Commander Keen」まで,PCではピクセル単位でスクロールができる技術がなく,そのため同作は多くのゲーマーに支持されることになった。現在でもイベントに同作のコスプレで参加する熱狂的なファンもいるようだ
画像集#009のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「Commander Keen」は,1990年9月から1か月に1作のペースで年内に3作も作られたが,そのハイペースの原動力となったのが,スムーズスクロールを可能にしたカーマック氏のゲームエンジン(当時,その呼び名はなかったものの)に,新しいアセットを加えていくという開発モデルの確立だった。実際,シリーズ第4作を開発していた1991年には,ゲームエンジンを他社にライセンスしており,このとき,ゲームエンジンのライセンス提供という新たなビジネスモデルのコンセプトが生まれたのだ。


「Commander Keen」で確信した未来


 「Commander Keen」シリーズの開発中,週末になると彼らはSoftdiskからパソコンや開発機材を持ち出し,ルイジアナ州の湖のほとりにある安価な貸別荘に集まったという。ジョン・カーマック氏が持ち込んだ大きなテーブルで「ダンジョンズ&ドラゴンズ」をプレイするのが毎晩の習わしで,その中から「DOOM」や「Quake」のアイデアが作り上げられていった。彼らがSoftdiskを辞め,id Softwareとして正式に独立したのは,1991年2月1日のことだった。

「id Softwareの歴史」といった話には必ず出てくる写真の1つ。若者達は,ルイジアナ州のクロス湖のほとりの貸別荘で,週末になるたびに会社から持ち出した機材を並べてゲーム作りをしていた。右手のテレビなどが乗ったテーブルは撮影者であるトム・ホール氏のもので,スーパーマリオブラザーズを録画した映像をフレームごとに止め,画像をトレースしていたらしい
画像集#010のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「Commander Keen」シリーズを含め,1991年内にid Softwareからリリースされた作品は12タイトルにおよぶ。つまり「1か月に1作」という,当時の基準でも非常に速いペースでゲーム作りが行われたことになるが,ロメロ氏は「実際には,2か月に1度のリリースになります。1度に2本のゲームを作っていたからです」と語った。短期集中型のゲーム開発が身についていたようだが,ここで今回のセッションテーマでもある「プログラミングの原則」の第1条がようやく登場した。

 それは,「プロトタイプなんて作らない。ゲームを作りながら磨き上げていく。あとでバグテストで完成させることなど考えず,常にいつ販売しても大丈夫なクオリティに保っておく」というものだ。

画像集#012のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 彼らは才能ある,どんな無理でもきく20代の若者達だった。大雨が続いて湖が氾濫し,道路が冠水しても,車を乗り捨て,ヘビが泳ぎ回る水をかき分けながら貸別荘に向かうほど,ゲーム作りに情熱を注いでいたとロメロ氏は続けた。

 もっとも,雨の多いルイジアナ州に嫌気がさしたのか,1991年8月,ホール氏が大学時代を過ごしていたウィスコンシン州に移住することになるが,引っ越しなどで貴重な時間を失いたくなかった彼らは,そのとき,もう1つのルールを全員で確認し合った。

 「チームの誰であれ,いつでもゲームをプレイできる状態にしておく。ローディングの失敗がないよう,ゲームエンジンは常に修正を加えておく」

画像集#013のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 このルールについてロメロ氏は,「もし現在,100人のチームで開発をしているなら,ゲームエンジンに問題が発生したとき,多くの人たちが何もできないままオフィスに来ていることになる。ゲームが常にプレイアブルな状態であることは非常に重要であり,常に確実な状態にしていた。多くの場合,ゲームエンジンは存在しないデータを探したり,問題があったり壊れたりしているデータを読み込むことで,ローディングに失敗する。これらを常にチェックして,ゲームを動かせる状態にしておかなければならない」と語っていた。
 ロメロ氏はここで,別のルールも紹介した。

「プログラムはできる限りシンプルにしよう。コードを眺めて,どうすれば簡略化できるのかを常に考えるべきだ」

画像集#014のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「id Tech 2」とも呼ばれるようになった「Quake」用のゲームエンジンまで,id SoftwareはC++ではなくC言語にこだわり続けたが,これは,クラスや複雑な構造がなく,言語がミニマムだったという理由にあるようだ。

 ウィスコンシン州に引っ越して4か月後,州全域が雪嵐に襲われてしまう。例年でさえ冬の厳しい地方なので,温暖なテキサス州やカリフォルニア州の暮らしが長かったホール氏以外の3人は,すっかり辟易してしまう。プログラム言語との格闘には慣れていたが,冬将軍との戦いのことなどまるで考えていなかったとロメロ氏。彼らは雪どけとともにテキサス州に戻っていった。

寒すぎたウィスコンシン州を離れ,ダラス市近郊のリチャードソンで本格的にスタートしたid Software。筆者は取材のため,このオフィスに入れてもらった経験がある
画像集#011のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則


ついに「Wolfenstein 3D」が誕生


 「良いツールは良いゲームを作る。ツールの開発には十分な時間をかける」

画像集#015のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 これはジョン・ロメロ氏が語った4つめの原則だ。ツールの開発はロメロ氏が担当しており,1991年にはタイトルエディタ「TEd」を作ったという。これは非常に使いやすく柔軟性も高いものだったらしく,id Softwareのゲームエンジンを使ったさまざまな作品,例えば「Catacomb 3-D」「Wolfenstein 3D」「Spear of Destiny」「Rise of the Triad」「Corridor 7」など,合計33タイトルで使用されている。

id Softwareが3Dゲームへと傾斜していくきっかけとなった「Catatomb 3-D」
画像集#016のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 上記の「Catacomb 3-D」が,id Softwareが開発した初の3Dゲームで,1992年1月にリリースされた。Looking Glass Studiosの前身となるBlue Sky Productionsが開発し,Origin Systemsが発売を担当した「Ultima Underworld: The Stygian Abyss」に影響を受けた作品で,彼らがあまり得意としない,魔法を主体にした一人称視点型のRPGだった。
 そのアイデアを進化させたのが,「Wolfenstein 3D」で,4人のコアメンバー全員が参加した初のゲームでだった。第1ステージのみを収めたシェアウェアとしてリリースされたのが1992年5月,製品版はその2か月後だったという。シェアウェア版の開発には,4か月を費やしたそうだ。

 シェアウェアとは,今で言う無料体験版のようなもので,「気に入ったら,続きは購入してください」という目的で,人に譲ったり,マウスなどのハードウェアに付属したりして拡散される。「Wolfenstein 3D」の正規版は59.99ドルだったが,発売から1か月で4000本を売るという,彼らにとっての最初のヒット作になった。

「DOOM」ではなく,この「Wolfenstein 3D」を最初のFPSタイトルとして挙げる人も多い
画像集#017のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 ウィスコンシン州にいた頃にジョン・ロメロ氏が存在を知ったのが,現地で活動していた小さなデベロッパRaven Softwareだった。「Wolfenstein 3D」で利用されたゲームエンジンのライセンスを取得し,彼らが1993年にリリースしたのが,「ShadowCaster」という一人称視点のRPGで,「Wolfenstein 3D」にはなかった傾斜した地形や霧の表現などが加えられているのが特徴だった。同作のパブリッシングを担当したのは,Origin SystemsとElectronic Artsだ。

id Softwareのゲームエンジンとロメロ氏の協力で生まれたRaven Softwareの「ShadowCaster」。日本でもエレクトロニック・アーツ・ビクターから発売された
画像集#018のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 この頃,ジョン・カーマック氏は自宅に籠り,さまざまな文献を読みながら新しいエンジンの開発に挑んでおり,その結果生まれたのが,「id Tech 1」と後に呼ばれる「DOOM」のゲームエンジンだ。このとき,id Softwareのメンバーは,こう誓い合ったという。

 「我々自身が最高のテスターであり,部外の誰にもバグを見せたり,ゲームがクラッシュしてしまう様子を見せてはいけない。他人の時間を無駄にするな。コードをしっかりと確認しながらしっかりとテストしよう」

画像集#019のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

「バグを見つけたら,見つけた人がすぐに修正すること。そのまま見過ごしてはいけない。もし,バグをその時点で放置したら,新たなコードがバグのあるコードの上に書き加えられることになり,非常に不安定になってしまう」

画像集#020のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 つまり彼らにとって,他人のバグテストのリストからコードの間違いを見つけていくのは無駄な作業だと感じていたのだ。


「DOOM」から「Quake」に続く成長の中で


 ロメロ氏はここで,「先ほど,DOOMのアイデアはダンジョンズ&ドラゴンズをプレイしながら練ったと言いましたが,『死霊のはらわた』や『エイリアン』などの映画にもインスパイアされており,自分達の好きなものを混ぜ合わせた世界観と言えます」と述べ,次の原則を紹介した。

 「自分達が目標にしているより高いレベルの開発システムを利用する」

画像集#021のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

プログラムについてはツール制作に徹していたロメロ氏だが,優れたツールが優れたゲームを生むという哲学を持っている
画像集#023のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
 「DOOM」まで,id SoftwareはMS-DOSでゲーム開発を行っていた。C言語ソフト「Borland C 1.31 IDE」を14インチディスプレイで眺めつつ,12インチディスプレイをつないだパソコンで「Turbo Debugger」を起動してバグ取りを行っていたという。昔から使っている慣れた環境だったが,ロメロ氏は,さらに良いハードウェアやOSを使えば,さらに良いゲームになると考え,「DOOM」の開発からNeXTコンピュータの「NeXT」に乗り換え,この(当時としては)高性能なワークステーションが「Quake」の開発へとつながっていった。ロメロ氏がNeXTのOSである「NeXTSTEP」を使って作った開発ツール「DoomED」「QuakeEd」は,ステージを作成し,テストを迅速を進めていていくうえで大きな貢献をしたとのことで,id Softowareにとって最も重要な開発ツールだったとロメロ氏は胸を張る。

この写真も,初期のid Softwareを語る際にしばしば用いられる1枚だ。中央で腕組みをしているケヴィン・クラウド(Kevin Cloud)氏は,「Wolfenstein 3D」のアーティストとして1992年に雇われた6人目のスタッフで,現在も同社に残る唯一の初期メンバーだ。この頃には,ビジネス担当として入社したジェイ・ウィルバー(Jay Wilbur)氏や,サウンド担当のボビー・プリンス(Bobby Prince)氏も在籍しており,次第に所帯が大きくなっていった
画像集#022のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「DOOM」の開発中,トム・ホール氏がid Softwareから去っていった。筆者の聞いた話では,ゲームデザインに熱を入れていたホール氏が,「DOOM」のストーリーをもっと細かく作りたいと話したところ,スピードを重視するカーマック氏に拒否され,そこから生まれた軋轢による退社だという。ホール氏の抜けた穴は,Chaosiumで「ダンジョンズ&ドラゴンズ」の制作に関わり,MicroProseでは「Sid Meier's Pirates!」の開発に参加した経歴を持つサンディ・ピーターセン(Sandy Petersen)氏と,プログラマーのデイヴ・テイラー(Dave Taylor)氏によって埋められたという。

優れた人材が集まり始めたid Software。左がデイヴ・テイラー氏で,右はサンディ・ピーターセン氏。テイラー氏はその後独立し,1998年にFPSとRTSを融合させた「Golgotha」をリリースした
画像集#024のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「DOOM」の発売後,続編となる「DOOM II: Hell on Earth」の開発を進めるロメロ氏が,再びRaven Softwareとタッグを組んで制作したのが,1994年12月にリリースされた「Heretic」だ。その後,Raven Softwareは「Quake」のゲームエンジンを使って「Hexen: Beyond Heretic」を作るなど,ゲーマーにとって同社はid Softwareの弟分のような存在として認識されるようになっていった。
 ご存じのように,Raven Softwareはその後も活動を続け,2020年には創立30年を迎えた。その間,「Quake 4」(2005年)や「Wolfenstein」(2009年)など,id Software関連のゲームを作っているほか,長らく「Call of Duty」シリーズの外部デベロッパとしてサポートを続けるなど,独自IPは少ない印象だが,堅実なゲームメーカーとして歩んでいる。

ロメロ氏が協力したRaven Softwareのタイトル。「Heretic」「Hexen: Beyond Heretic」に続く3作めは結局,陽の目を見ることはなかったが,同じく頭文字がHとなる「Hetacomb」というタイトルが予定されていたという
画像集#025のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則


プログラミングは,理論をベースにしたクリエイティブアートだ


 ロメロ氏は,ここで新たなルール「(プログラムの)コードを書くのは,そのゲームためであり,未来のゲームのためではない。我々はゲーム開発で新しい知識を得られる。その知識で新しいコードが書けるようになる。我々はまた,過去のコードに縛られるべきではない」を挙げた。

画像集#026のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「Quake」エンジンは基本的にジョン・カーマック氏が作り上げたものだが,レンダラの制作には,Microsoft時代に「Windows NT 3.1」を開発し,1990年の著書「Zen of Assembly Language」で業界内外から高い評価を受けたマイケル・アブラッシュ(Michael Abrash)氏が参戦している。また,後に「World of Warcraft」のリードプログラマーとなるジョン・キャッシュ(John Cash)氏が,ネットワークに精通したプログラマーとして,アブラッシュ氏と同じく短い期間だが,「Quake」のプロジェクトに参加している。
 さらにプログラムのサポート役として雇われていたショーン・グリーン(Shawn Green)氏を含め,以前よりは増えたものの,id Softwareの開発スタッフはわずか9人だったという。そうでありながら,「Quake」の開発中の1995年には,「The Ultimate DOOM」「The Master Levels for DOOM II」をリリースするなど活動は精力的で,まさに精鋭部隊だった。

ジョン・カーマック氏と交わした会話で意気投合し,ゲームとはあまり関係がないのにid Softwareで「Quake」向けのレンダラを作成することになったマイケル・アブラッシュ氏(右)。現在はジョン・カーマック氏と共にFacebookに在籍し,「Oculus VR」の技術開発を担っている
画像集#027のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 14か月という,ロメロ氏と2人のカーマック氏にとってそれまでになく長い開発期間となった「Quake」だったが,マルチプレイのテクノロジーデモ「Qtest」が公開されたのは,製品版の発売に先立つ1996年2月24日このことだった。この頃に誕生したプログラミングの原則は以下のようなものだった。

 「デザインを安定したものにするために,機能はカプセル化しておく。これは間違いを起こす回数を減らし,デザイン期間を節約できる」

画像集#028のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

開発開始から14か月を経て,ようやくリリースされたマルチプレイ体験版「Qtest」
画像集#029のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
 ロメロ氏によると,このルールの好例になるのが,「Quake」に登場する壁のたいまつだそうだ。通常なら,マップデザイナーがたいまつのモデルを設置し,炎をそこに乗せてアニメーションを加え,サウンドを連動させるという工程を踏むことになる。しかし,デザイナーがマップを調整するためにオブジェクトを動かしたときに,炎だけとか,サウンドのみが残ってしまうといったミスも生みやすい。ロメロ氏は「カプセル化して1つにまとめることで,こうした間違いを減らせる」と話す。

 以前から「今日はDOOMのバースデー」と自分のブログなどに書き込むなど,「記念日マニア」として知られているが,「Quake」に関しても「(1996年)の6月22日,テキサス時間5:30に,ウィスコンシン州マジソン校のサーバーを使ってQuakeをリリースしました」と,メモでも取っていなければ覚えられるはずもない具体的な時間を示した。
 「Quake」は,マウスを使って視線を決めるという,現在のFPSでは一般的な「マウスルック」を発明し,インターネットを使ったハイスピードな対戦は多くのゲーマーのハートをつかみ,クランがあちこちにできるなど,現在のeスポーツ文化の礎を築いたタイトルだ。

ロメロ氏は,「Quake」を最後にid Softwareを退社する。1998年にはトム・ホール氏とともにION Stormを立ち上げ,壮大なビジョンを詰め込んだ「Daikatana」を開発するが,リリースが何度も遅延するうちに技術の進歩に乗り遅れ,結果として作品の評価は低かった
画像集#032のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則
画像集#033のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 ロメロ氏は,「このゲームが完成するまでの5年半に,10人にも満たないデベロッパが28作品を世に送り出した」と述べ,最後の原則として,以下のようなものを紹介してセッションを締めくくった。

 「透明性のあるプログラミングをすること。自分に与えられているタスクをどのように解決するのかをリーダーや仲間に話し,フィードバックやアドバイスを得よう。プログラミングをブラックボックスのように扱うと,レールから脱線して開発の遅延につながる」

画像集#030のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

 「プログラミングは,理論をベースにしたクリエイティブアートの1つだ。すべてのプログラマーには違った個性があり,異なるプログラミングを行う。そこから生み出されるものが重要だ」

画像集#031のサムネイル/[GDC Summer]ジョン・ロメロ氏が語る,id Software時代に培ったプログラマーの原則

GDC Summer公式サイト

4Gamer「GDC Summer」記事一覧

  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
スペシャルコンテンツ
注目記事ランキング
集計:04月23日〜04月24日