夏休みの自由研究

息子はパソコンのゲームをやっているうちに、どのような仕組みでゲームが動いているかを知りたくなったので、この夏休みを機に自由研究のテーマにしました。息子が決めた自由研究なのですが、結局のところ家族総動員で研究に取り組まざるを得ませんでした。

まずは、キャラクタの動きを作り出すための方法を知ってもらうために、簡単なプログラムを教えようと思って、適当な言語を探しました。夫は「12歳からHSP3.0わくわくゲームプログラミング教室」という本を見つけてきました。HSP(Hot Soup Processor)は一人の日本人が開発したプログラミング言語で、8ビットのパソコン時代のBasic言語に似ているようです。初心者が学習するのには、敷居が低いからお勧めだと夫が言っていました。しかし、この本に載っているサンプルは地味すぎて、学習する方も教える方も興味が沸いてこないので、別のプログラミング言語の本を探すことにしました。

Amazonで「アクションゲームプログラミング」という本を見つけて、本屋さんで実物を見て買うことにしました。 この本はシナリオレベルの企画からプログラミングまで一通り説明されているので、ゲームのプログラムを作ったことがない私にとっては適当な入門書です。この本をネタにすれば、息子が興味を持ちながら、何とかやって行けそうな気がしました。

この本では、製作環境として Visual C++ 2005 Express Edition 以上と DirectX SDK を指定しています。両方とも Microsoft のサイトから最新版をダウンロードしいざサンプルプログラムをコンパイルしてみようと思ったら、エラーで先へ進みません。どうもバージョンが合わないようで、夫はインターネット上でやや古いバージョンの Microsoft DirectX SDK (April 2007)を見つけてインストールしてみたら、やっと動くようになりました。

短時間で小学5年生の息子にプログラムを教えるのが難しいので、おおざっぱの仕組みだけを知ってもらってもいいかと思いました。サンプルプログラムに使われている(ノンプレイヤー)キャラクターの移動スケジュールデータを変更することによって移動パターンが変わるのを体験させるのが精一杯の成果でした。来年も同じ研究をするとすれば、もうちょっと時間をかけて簡単なプログラムでも作ってもらおうかと考えています。