新入部員への講座〜初級プログラミング講座〜

2年 井上尚亮


新入部員が受ける講座
 X680x0同好会では、入部以前からゲームの作り方を知らない方でもゲームが作れるようになるために、新入部員に対して幾つかの「講座」を設けています。
 ゲームを作る環境を整えてもらうための「環境導入講座」、プログラム面に関してゲームの作り方を知る「初級プログラミング講座」、実際にゲームを企画し作成する「ミニゲーム講座」、素材に関しての「音講座」「ドット絵講座」…などなど。
 今年度私は、その講座の1つ「初級プログラミング講座」の担当にあたったので、それに関して紹介しようと思います。

初級プログラミング講座の始まり
 今年から新入部員にプログラミングを学んでもらうやり方は大きく変わり、新入部員の方に部室に来てもらい、実際にパソコンの前についてプログラムを書いてもらうという形態になりました。以前は講座形式や、Web上に教材をおき、それで自習して下さいといった形をとっていたのですが、新入生は新しい生活に慣れることなどで忙しく「実際にプログラムを書いてみたのは夏休みに入ってからだった」という方もいたので、「早いうちに実際にプログラムを書くことに触れてもらおう」という狙いのもと、このような形にしました。また積極的に部室に来てもらい、上級生と交流して欲しいという狙いもありました。
 大きな変化はこれだけでなく、今回は1本の作品を作る流れでプログラミングを習ってもらい、講座が終わったときには1本の作品が完成しているという方法をとりました。短い時間の中あまり多くのことは教えられません。それでも今回学んだこと幾つかの基本事項だけで、ちゃんとゲームは作れるということを示したかったのです。
 大きく形態が変わって初めての事柄ということもあり、苦労したこともありました。部室にあるパソコンは限られているので、1回の講座で行えるのは最大4人。受講生が約25名で、予定などを調整したら(この講座は受講生の授業がないとき、いわゆる「空き時間」に行いました。毎週1コマ90分。ゴールデンウィーク終了後くらいから始まって、全部で約3週間)最終的に9クラス。1週間に9クラスは私1人では無理なので、部内で講師をしてくれる方を募集し、手伝っていただきました。

今回作ってもらった物
 本当は、どんなゲームを作るか考えるところがゲーム作りで一番楽しいところなのですが、今回は練習ということもあり、どんなゲームを作るかはこちらで指定しました。
一定速度で落下する物体を、Zキーを連打することによって上昇させ、物体が一番下まで落下するのを阻止するゲーム
物体が一番下まで落下すると「Game Over」と表示される
一番下に落下するまでの耐久時間を競う



講座の流れ
講座内容ゲームの完成度
始める前に知っておいて欲しいこと
(60fps、レイヤー、ピクセル、ウィンドウサイズ、プログラムとは、ライブラリ、バグ、デバッグ)
新規作成の仕方
デバッグの仕方
新規作成したものがどこに保存されているか
ペイントの使い方
(キャンバスサイズの変更、保存形式、座標系、透明色)
素材完成
素材をどこに保存すればいいか
画像の表示の仕方背景・落下物体の表示完了
変数を宣言し、利用する物体が落下するようになる
ボタンの入力を受け取るZキーを押すと物体が上昇するようになる
if(「もし〜したら、〜する」という命令)一番下まで落下したら、それ以上落下しないようになる
文字の表示一番下まで落下したら「Game Over」と表示されるようになる。どのくらい落下しているか、何秒耐久しているかも表示されるようになる
ゲームの終了のさせ方Cキーを1秒以上押したら、ゲームが終了するようになる
音をならすBGMがつき、Zキーを押したとき効果音がなるようになる
作ったゲームを配布できるようにするには(製品版の作り方、配り方)完成
開発環境を変えたときの諸注意
これからの勉強方法のヒント


バラエティ
 前述の通り、本来ゲーム作りで一番楽しいであろう「どんなゲーム作るか」の部分は、こちらで企画してしまったのですが、それでも新入生のオリジナリティを出してもらうために、絵を自分で書いてもらったり、落下速度や上昇値といったのゲームバランスを自分で調整してもらいました。
 また今回教える予定だったものは、私の中で必要最低限だと思っているものに限定したのですが、それ以上の内容を付加するかは講師の方々に任せました。中には小数の使い方や文字に色をつける方法、sinやcosをやったところもありました。

講座をやってみて
 この講座終了後、新入部員の方々は「ミニゲーム講座」の方でゲームを作り始めます。そして、この前の夏休み中に中間発表が行われました。昨年と比べ多くの方が、既に動き、操作できるものを発表し、素晴らしい内容のものが多く、講座をやった者としては嬉しい限りでした。
 この講座の内容は、まだまだ改良すべき点が沢山あります。もし来年もこのような講座を行うなら、ぜひ来年の2年生、今の1年生の方々にもう1度企画し直してもらい、運営して欲しい。私だって実は昨年からプログラミングを始めました。この1年間で学んだことや、今回分かりにくかったことなどを基に、進化した「初級プログラミング講座」を作って欲しいと思います。