まどかの自己満足的思い出話
第1弾 「私とMSX」


第5回 「謎の言葉 スプライト」


 文字を表示することをおぼえた私は、資料を頼りにどんどんサンプルを打ち込んでいきました。

 サンプルでは、文字表示から始まり、線を引く・四角を描く・塗りつぶすというようにお決まりの処理を次々とこなしていきます。
 文字表示同様、ひとつのサンプルが成功する毎に感動の嵐なのですが、命令の意味なんかはさっぱり理解してません。こうすればこうなるという「おまじない」感覚でリストを打っていました。

 一通りサンプルを打ち終えてやることが無くなった私は、既存のプログラムを書き換えて、自分のオリジナルプログラムを書いてみようと思いつきました。改造の第一歩です。
 プログラムの基本は「真似」から始まると私は考えています。

 ここでいう「真似」とは単なるコピーではなく、同じモノを自分なりに再現することを言います。かの中村光一氏も高校生時代、ゲームセンターに毎日足を運んでゲームを研究し、キャラクターの絵や動きなどを全部メモって、家に帰ってそのデータを基に完全移植を試みていたそうです。

 こうすることによって、プログラミングのレベルを上げていくわけです。こういうことをするにはどうしたらいいかを自然に考えるようになりますしね。

 そして、プログラムには暗黙の鉄則というものがあります。それは、
 
    「無いモノは創れ!!」

 です。これは「こういうことがしたいのに、なんでこんなのがないんだ?」という時に威力を発揮する(?)もので、そんな時は「無いモノは創れ!!」の精神で自分で創ってしまうのです。「必要は発明の母」みたいなものですね。

 と、プログラム談義(?)はこれくらいにしておいて、改造第一歩のお話。

 オリジナルのプログラムを書き始めた私は、とりあえずサンプルで使った命令の意味を調べることを始めます。MSXのマニュアルの最後にリファレンスがあったので、それを使ってお勉強。そして実行。バグ発生。Syntax Error in なんとか。

 プログラムには初心者でも上級者でもバグとの戦いが付き物。バグとのつきあいが始まったのもこの頃からですね。当たり前だけど。
 今となってはこのバグもなんかかわいいものです。出るのはわかってるから、そいつをいかに退治するかを楽しんでます。「ふふ、でやがったな」って感じ。
 このバグ退治を楽しめるかどうかでプログラマーに向いているかどうかを判断出来るんじゃないでしょうか。

 今思い出したことですけど、例えば学校とかでプログラムの課題が出た場合、プログラムを好きな人もそうでない人もプログラムを考えるはめになりますよね。
 この時、ほぼ全員がバグの襲来を受けるはずです。そこそこ出来る人は慣れっこなので、「あ、バグだ」という程度でちゃちゃっと解決してしまいますが、初心者の人はもう大変。バグの意味がわからないし、どこにバグがあるかなんてさっぱり。挙げ句の果てにはパソコンのせいにする始末。たまりませんね。

 これは専門学校の1年生の時に強く思ったことですが、コンピュータの学校に来る人のほとんどがプログラマ志望だと思います。それなのに、デバッグを嫌う人が多いというのは信じられませんね。覚悟が足りないというか、意志が弱いというか。

 まぁ、自分は初心者ではなかったからそう思うだけかもしれませんが、悲しいことです。人のソースをコピーして名前だけ変えて提出するような人はもう来なくて良いです。このことで先生(当時の担任)と話をしたことがありますが、先生も困っていました。やる気のない人に教えるのは難しいと。

 また横道にそれてしまいました。ほとんど愚痴ですね。すみません。

 と、いうわけで、一通りの基本描画関数を理解した私は、当然の事ながらゲームを創ってみたくなりました。元々プログラムを始めた理由がゲームづくりですから、当然の展開ですね。そして、ひとつの疑問がわいてきます。

 「キャラクターはどう表現するのだ?」

 そう、線と文字だけではゲームになりません(とは完全に言い切れませんが)。
 ゲームにはマイキャラが必要です。でも、市販のゲームや投稿作品にあるキャラクターの表示の仕方がわかりません。こいつは困った。通信の資料には線や文字の表示方法しか載っていません。どうしよう。

 ここで、またも救世主のように参上したのが、MSX・FANの「スーパービギナーズ講座」。なんとキャラクターの表示方法が載っている。早速読む。

 なになに、スプライト? なんだそりゃ? 炭酸飲料か?

 と、お約束の勘違いをしながら私は「スプライト」に出会いました。
 ゲームを創るに当たってすごく便利な機能である「スプライト」。
 この後、私はスプライトにのめり込んでいくのでありました。


次の話へ

前の話へ

目次へ