ニュース
[GDC 2011]「Pitfall!」の制作者David Crane氏が語る,乏しいリソースをやりくりしてゲームを作り上げることへの挑戦
Crane氏と仲間はAtariを退職し,ゲーム制作を専門とするActivisionを設立した。つまりCrane氏は,現在,Activision-Blizzardとして世界最大の規模を誇るゲームメーカーを立ち上げた1人でもあるわけだ。そんなActivisionの最初の大ヒット作が,Pitfall!だった。
……このくだりは,ゲームの歴史を扱った多くの書籍で取り上げられている有名な話なのだが,まさか当事者の口から直接聞けるとは思ってもいなかった。
Crane氏はPitfall!を含めて,約80種類のゲームを開発し,「AIAS Pioneer Award」「Developer's Choice First Penguin」「Designer of the Year」などのほか,さまざまな賞を受賞している。しかも,今でもゲーム制作を止めておらず,現在はサンフランシスコのMTV Gamesで働いているとのことだ。Pitfall!もまた,見かけはすっかり変わったが,2008年にリリースされた「Pitfall: The Lost Expedition」など,続編が作り続けられている。
自身の経歴を語ったのち,Crane氏はそもそもコンシューマ機,Atari 2600とは何なのかを説明した。Atari 2600は,CPUとしてMOS Technologyの8ビットプロセッサである6507を搭載している。クロック周波数は,1.19MHz。コストを抑えるためにレジスタが減らされており,8KBのメモリまでしかアクセスできなかったが,心配することはない。なにしろAtri 2600のメインメモリは128byte(KBではない)。プログラムを供給するカセットの容量は,4KBしかなかったからだ。
画像表示はビットマップではなく,“Single Scan-Line”と呼ばれる方法が使われており,これはテレビの走査線に直接指示を与えるものらしい。Crane氏も「終わった技術」と語っており,実は筆者も説明されてもよく分からなかったのだが,いずれにせよ当時のプログラマはテレビがどのように表示されるかについて熟知している必要があり,走査線が戻るタイミングを狙って別の処理をさせるなど,今では考えられないようなトリックを使うこともあったという。それにしても,128byteのメモリは,最近のCPUのキャッシュよりもはるかに小さい。しかも,なにからなにまでCPUがやっていた関係上,ゲームのロジックに割けるリソースは,全体の25%程度だというから,さらに驚く。
ともあれ,Activisionのプログラマとして新作を作ることになったCrane氏は,Pitfall!のテーマを「人間が走る」ということにした。これまで,戦車や飛行機が登場するゲームは作ったことがあるので,次は人間にしようという程度の理由だ。
とりあえず,まず方眼紙に人間の姿をスケッチした。走ることは決まっているのだが,なぜ走るのか? もちろん,財宝を求めて,あるいは何かから逃げているのだ。背後には木が生えていることにしょう。画面の上のほうを緑一色にすれば,メモリが節約できる。となると,ここはジャングルだな。下は黒くしよう。これは何かな? たぶん,地下トンネルだろう。ジャングルらしく,障害物として道に穴ボコがあったり,ワニの住む池が出現するので,それをジャンプやターザンのようにツルにぶら下がって越えることにしよう。
方眼紙に人間の姿を書いてから,ここまで決まるのに,多めに見積もっても10分はかかっていないとCrane氏は語る。しかし,これで企画書は完成した。歴史に残る傑作は,1人の若いプログラマが,ほんの思いつきでスタートさせたわけである。
もっとも,それがおかしなことだは思っていなかった。なにしろ,その頃は1人で1本のゲームを作るのが普通だったからだ。グラフィックスツールの代わりに方眼紙があり,サウンドは,ホワイトノイズやサイレンをプログラムで変形させて制作する。命令で使われるCPUクロックを計算して調整し,すべてを4KBのROMに収めなければならない。
当時のプログラマは,ゲームデザイナーとサウンドディレクターとグラフィックスデザイナーを兼任していたわけだが,できることがそれほどないので,大丈夫だったのだろう。
あとはひたすらプログラムするだけだとCrane氏は語るが,もちろん,メモリやCPUパワーを節約するために,さまざまなトリックが使われたことはいうまでもない。
発売後の人気は上記のとおり。Pitfall!は大人気になり,さまざまな続編が制作され,各機種用にリリースされた。もっとも,会場に詰めかけたゲーム開発者達にとって,約30年前のゲーム制作現場は状況があまりに違っていると映ったかもしれない。ゲーム開発のためのエミュレータやデバッガまで自分で書くということはまずないだろうし,プログラムのサイズをbyte単位で気にするという必要もなさそうだ。
とはいえ,問題を解決するために頭を使うという部分は同じなのかもしれない。Crane氏の場合はメモリやCPUパワーといった物理的なリソースが障害となっていたが,最近のゲーム開発者も時間や予算,効率などの問題に直面している。思考を柔軟にしてさまざまな問題を解決していくという点では,得るものの大きいレクチャーだったはずだ。
- この記事のURL: