訳者あとがき
私がプログラミングを本格的に始めた頃、所属していた研究室に、まもなく発売されるパソコン(当時は「マイコン」と呼ばれることのほうが多かったように記憶しています)に付属させるゲームを作ってくれないかという話がきました。その会社は、それまでパソコンを販売していなかったのですが、世の中の流れには逆らえず自社開発のパソコンを発売するということになったのです。
当時のほとんどのパソコンではBASICというプログラミング言語が使われていました。ワープロソフトや表計算ソフトが一般に使われるようになる前の話で、ビジネスや一般家庭ではまだあまり利用されておらず、後に「オタク」と呼ばれるようになる人々が購入して、自作のソフトを作ってビジネスに利用したり、他人や自分が作ったゲームを楽しんだりしていました。
私はパソコンでゲームをするのは結構好きでしたが、おもに「大型機」とか「ミニコン」などと呼ばれるコンピュータでしかプログラムを作ったことがなかったので、BASICを使う機会はありませんでした。「初めての言語だけど大丈夫だろうか」と思ながらも、「ゲームを作るのはどんなものか経験してみるのも悪くなかろう」と、そのプロジェクトに積極的に関わりました。
それまで自作のプログラムでは、コンピュータの画面に文字、しかも当時は英数字や記号だけしか表示したことがありませんでした。表のようなものは作ったことがありましたが、せいぜいハイフンや縦棒を使って線を引くといった程度でした。
文字だけしかないゲームというのはまずありません。パソコン組み込みのBASICの機能をドラフト版のマニュアルで調べては、画像を表示したり、音を鳴らしたりするために試行錯誤を重ねました。画面全体を使って、市松模様のチェス盤を表示してナイトの「桂馬飛び」で全部のマスを「ピョン、ピョン」と音を出しながら順に訪問させたり、富士山のような形を描いて山梨県側と静岡県側から小さな人の形をした「アイコン」(当時はこの言葉もまだ使われていませんでした)を一段ずつのぼらせる「山登りゲーム」を作って、頂上でバンザイさせてバックグラウンドで簡単な音楽を流したり。懐かしい、楽しい思い出です。
ひとつふたつゲームを作るうちに、それまで身に付けていたほかの言語と同じようにBASICを不自由なく使えるようになっていました。
自作のゲームで一番楽しいのは、すべてが自分の手の中にあることかもしれません。ほかの人が作ったゲームだと、「これはこうしたほうがいいなあ」と思っても手が出せないのですが、自分が作ったものならば自由自在。感性に合うように決められます。「人の作ったものをやるのも楽しいけれど、自分がゲームを作るほうが楽しいかも」などと思ったことありました。その後、学業が忙しくなると、さすがにゲーム作りからは遠ざかってしまいましたが……。
今回、出版社からこの本が送られてきたとき、まずサンプルプログラムをダウンロードしてiPhoneで動かしてみました。「おお、なかなかおもしろいじゃないか。こんなものが簡単にできるのなら、またゲームに挑戦してみようかな」と思い翻訳をさせていただくことになりました。
この本を手に取られた皆さんも、あるいはこの文章をサポートページでお読みになっている皆さんも、まずは公開されているサンプルプログラムをダウンロードし、Xcodeを起動して、ご自分のiPhone/iPadなどでプレーなさってみてください。「おもしろい」「なかなかのものだ」「裏ではどうやっているのだろう」などと思われたら、この本とソースコードを突き合わせながら、まずは感性に合うようゲームを改造してみてはいかがでしょう。
これまでのプログラミングの経験や、Mac OSにおける開発の経験の量によって、必要な時間や、参照する必要のある資料の量はさまざまだと思いますが、しばらくするとiOS機器の「ネイティブ言語」であるObjective-Cが苦もなく使えるいうことになっているのではないでしょうか。
最後になりますが、原稿を逐一チェックしていただくとともに、日本語版に新たに魅力的な内容を付け加えてくださった監訳者の松田白朗氏と高橋啓治郎氏、原稿および例題をチェックしていただいたSunflatの岩崎陽平氏、そしてこの本の翻訳の機会を与えてくださったオライリー・ジャパンの宮川直樹氏に深く感謝いたします。
2010年8月
訳者代表
マーリンアームズ株式会社 武舎広幸