世界初の…
目次
Bouncing Ball(1950)
Bouncing Ball は Whirlwind I(以下 WWI) 向けに作られたデモンストレーションです。
WWI 自体は 1951 年に完成していますが、Bouncing Ball は完成前の途中段階で、動作テストのために作られた簡単なプログラムでした。
ゲームではありませんが、バベジの構想と同じく、後のテレビゲームに影響を与えているため、ゲームの歴史では言及されることが多いです。
先に書いたとおり、アナログコンピューターでは砲弾の飛ぶ放物線を表示することができます。Bouncing Ball は、WWI ではそれ以上のことができる、と性能を誇示するデモでした。
WWI に接続されたベクタースキャンディスプレイの上で、光点が放物線を描きます。そして「着弾」すると…なんと、弾むのです!
以上。デモの内容はこれだけ。多分、今見ても面白くもなんともないデモです。
弾道計算機では、指定できる条件は「終了条件」のみでした。そのため、「着弾後は弾む」という指定はできないのです。
デジタルコンピューターなら、弾む処理も可能です。しかし、WWI 以前のデジタルコンピューターには、ディスプレイが接続されていませんでした。
Bouncing Ball は、デジタル・アナログのどちらのコンピューターにもできないことをやってみせた、優れたデモだったのです。
「初めて見る、コンピューターによる画面アニメーション」は、見る人を面白がらせたようです。
Bouncing Ball では、最初のボールの高さや速度など、各種パラメータをスイッチで変更できました。パラメータを変えたらどのように動くのだろう…と、デモを見た人は条件を変えては動かしてみたようです。
つまりは、このデモは「ユーザーが関与できる、楽しいプログラム」だったのです。
楽しめることは、ゲームの最低条件ではあります。
しかし、楽しければよいのかについては、後でもう一度考察します。
Bouncing Ball を作成したのは、WWI プロジェクトに参加していたチャールズ・アダムス(Charles Adams)でした。
彼は WWI に引き続き、TX-0 にも関わり、数多くのソフトを作ることになります。
もっと知りたい!
Whrlwind プロジェクトに携わり、後に DECのエンジニアも務めた Jack Gilmore が 89年に SIGGRAPH で行った、初期のコンピューターグラフィックスについての講演のビデオ記録。
8:02付近に、Bouncing Ball の映像(おそらく、シャッター開放で CRT を写真撮影した画像)が出てくる。この項冒頭の図は、映像からキャプチャし、加工したもの。
Jack Gilmore が1990年に行った、コンピューターの歴史についての講演録。Whrlwind の事実上の責任者であった、Robert(BOB) Everrett が語る話の中で、Charles Adams が Bouncing Ballを作ったことなどに触れている。
OXO(1952)
OXO は、イギリスのケンブリッジ大学が作ったコンピューター、EDSAC で作られた、noughts and crosses の相手をする人工知能です。
noughts and crosses…これはイギリス英語で、日本語に訳せば「○と×」、日本語ではマルバツ、と呼ばれる三目並べです。(アメリカ英語では Tic-Tac-Toe)
先に書いたように、バベジが作ろうとした「三目ならべを行う機械」を実現したものです。作ったのは、ケンブリッジ大学の大学院生、アレキサンダー・サンディ・ダグラス(Alexander Sandy Douglas)でした。
バベジはイギリスの偉人でしたが、彼の残したテーマはイギリスで学問を学ぶものであれば、少なからず気になっていたようです。
たとえば、チューリングは EDSAC 同時期のイギリスのコンピューター、Manchester Mark I にも関わっていて、チェスを指すプログラムの具体的手順まで考えています。これは興味深いのだけど、テレビゲームではないので今回は割愛。
チェスは難しくとも、当時三目ならべを行う「回路」はよく作られていたようです。そして、ダグラスはソフトウェアで同じことを実現しようとしました。
それどころか、マッチ箱でも3目ならべをする「機械」を作ることができます。
EDSAC の時代は、メモリの信頼性は今よりもずっと低いものでした。そのため、EDSAC にはメモリの内容を表示するための「CRTモニタ」が接続されています。
このモニタ、目的は「動作確認」なのですが、当初から絵を表示してみる、アニメーションさせてみる、などの使い方が出ていたそうです。
先ほどの Bouncing Ball と同じく、「デモ」としての使い方ですね。
(写真は当時のもの。クリックで全体表示。3つあるブラウン管の中央がメモリモニタ、左はクロック表示、右は内部レジスタ表示)
ただし、EDSAC 自体は「2倍長」の演算が可能で、この場合は 2wordを連続して読み込める。この際、スタートビットは 2wordについて1つでよいため、18*2-1 = 35bit が使用できる。
水銀遅延管は 32本あったが、1本は 32word を記録できた。つまり、モニタではすべてを2倍長として考えて、水銀遅延管1本の内容を表示している。
OXO でも、アニメーションなどのデモと同様の手法によって盤面を表示します。つまり、画面表示を伴い、コンピューターを相手に人間がゲームを行う、テレビゲームと呼べるものです。
ただし、目的はゲームを作ることではなく、人工知能の研究でした。つまり、ゲームとしては非常につまらない、退屈なものです。
大学院生が作ったもので特に公開もされず、モニタに画像を表示するという手法も特に話題になることもなく、その後忘れ去られます。
再発見されたのはテレビゲームが一般化した後です。
もっと知りたい!
EDSAC のシミュレータです。Win/Linux/Mac 用ですが、Mac用は残念ながら 68k 版のみ。
…最近の Macユーザーのために説明すれば、OS 7 (OS X の3つ前のバージョン)の頃の Mac 用です。
EDSAC の各種写真があります。当時のモニタ写真は、こちらで公開されているものを使用させていただいています。
日本の Wikipedia には「画面写真が残る世界初のビデオゲーム」との記述があります。(2013年8月)
しかし、ケンブリッジの写真アーカイブにはありませんし、探しても他のところでも見かけません。
日本語版は英語版の翻訳なのですが、翻訳時点の元記事にも写真があるなんて記述はありません。
エミュレータの画像を「当時の写真の感じに」白黒に加工したものは、WEB上でよく見かけます。おそらく、日本語版記事を書いた人が裏付けも取らずに間違った記述をしたものと思われます。