はじめに

 なんでも昔、パソコンゲームはしょぼいものだったそうです。「自分だったらこうするのに」と思える余地が結構あったのです。そんな思いが、みんなにプログラムを作る動機を与えていました。そうしてみんなせっせとゲームを作り、パソコン雑誌に投稿していました。載れば掲載料がもらえますし、雑誌によっては賞を設け、入賞したものには結構な額の賞金を与えていたそうです。

 今はどうでしょうか。超高機能の家庭用ゲーム機が、安価で買えます。プロ集団が何ヶ月もかけて作ったゲームを遊ぶのが普通です。「自分だったらこうする」という創造意欲は起こりませんね。では個人がゲームを作る時代は終わったのでしょうか? そんな事はありませんね。

 現在は、フリーソフトがその役割を担っていると思います。編集者に気に入ってもらうといった事もなく、出来上がれば即インターネットで世界中に公開できます。ホームページを持っていない人でも、配信サイトに登録すればたくさんの人に遊んでもらえます。この場合得られるのは、金ではありません。喜びです。

 ただしシェアウェアであれば、お金が入ります。大金かもしれませんし、お小遣い程度かもしれません。いずれにせよ完成までに相当の時間がかかる事を覚悟しなければなりませんが。

 ゲームを作るといっても、壮大な世界を舞台にしたRPGや、大量の絵を必要とするアドベンチャーゲームをいきなり作ろうとすると大変ですね。ここでは、比較的作りやすいシューティングゲームをターゲットにします。もちろん、シューティングでも凝ったものを作ろうとすればそれなりに時間がかかります。市販ゲームのレベルのものを個人で作ろうと思えば、一から始めた人は下手すると十年くらいかかるかもしれません。

 現在ではフリーソフトでもプロ顔負けのものがたくさんあります。しかし、サイズの小さいものであれば、「自分だったらこうするのに」と思える余地があるのではないでしょうか。

 ある程度遊べるものを作ろうと思ったら、サイズはそれなりに大きくなるでしょう。このサイズというのはプログラムの長さだけを言っていません。絵もたくさん描かなければなりませんし、音楽や効果音もバラエティに富んでいなければならないでしょう。

 しかし、サイズが小さくてもアイディアが優れていれば、遊んでもらえると思います。某社の音楽に合わせてボタンを押すだけのゲームなんかは、ゲームのプログラム自体はとっても小さいと思うのです。あれはうまい汁を吸ったなと。某社自身はもちろん、各社が真似していろいろな亜流を出しました。もちろん素人がターンテーブルを回し、鍵盤を叩くハードウェアを作ろうと思ったら大変ですが。背景の美麗CGや、プロ級の音楽を作ろうと思ったら遠い道のりですが。

 同社が昔、シューティングっぽいパズルを出していました。ブロックを次々に打ち込んで四角形を完成させるのです。延々それの繰り返しです。にもかかわらず、結構はまるのです。今だったら似たようなアイディアのものを作ろうと思えば、音楽はどこからかフリー素材を拝借すれば、短期間でできるのではないかと思います。絵はどちらかいうと少なめでした。昔は、アセンブリ言語を使うのが普通で、プログラミング自体が相当大変だったようです。


 この講座ではアルゴリズム(考え方)を中心に扱っていこうと思っています。使う言語はHSP(Hot Soup Processor)です。これはBASICに似た言語で、DirectXも容易に操作できるプラグインがあって、簡単です。そしてこれはフリーソフトなので、タダです。今すぐゲームを作り始められます。Hot Soup Processorのページからダウンロードして下さい。

 とは言うものの、あくまでもアルゴリズム中心です。ですから、他言語を使う方にも参考になればいいなと思っています。またシューティングをターゲットにしていますが、考え方はある程度他のジャンルのゲームにも応用が効くのではないかと思っています。

 HSPの解説本は何冊か出ています。またHSP講座をやっているサイトがいくつもあります。ですが、どうもプログラムの説明が先行している印象を受けます。アルゴリズムが先にあるべきと思うのは、私だけでしょうか。

 ちなみに、HSP講座があるサイトにも、上記のHot Soup Processorのページから行くことができます。

ひとくちメモ:
・ハードウェアって、何?
 機械のことです。これに対して、コンピュータの中のプログラムや絵や音楽や文字等、目には見える、耳には聞こえるのに、実体のないものをソフトウェアと言います。実際にはその実体は電子です。絵も音楽も文章も、膨大な量の1と0の羅列からなるデータであり、記憶装置に蓄えられています。これらを、16進数の羅列として見たことがある人はいるでしょう。16進数は1、0の2進数を、4桁を1桁にまとめたものです。
 もっと言えば、その1と0は記憶装置の膨大な量からなる素子の、電圧の高い、低いで表されます。(たぶん。)そして電圧は、おそらくはコンデンサーに集まっている電子なのです。
 これらのデータは、画面に出力する機械(ハードウェア)や音にする機械に読み取られ、絵や音楽になるのです。

[目次へ][次へ] inserted by FC2 system