橿原市 Scratchプログラミングで学ぶゲーム製作
Scratchとは
Scratchとはプログラミングに触ったことが無い人やコーディングに苦手意識を憶えてしまった人に向けて開発されたプログラミングアプリです。すべての機能が無料で仕様することが出来ます。プログラムを作っていくうえでアルゴリズムやフローチャートといった処理の順番や優先順位などを考えなければいけないのですがScratchはそれを視覚的、感覚的に分かりやすく表してくれます。なのでプログラミングに触ったことが無い人でもさせたい動きとそれに必要な処理さえ分かっていればプログラムを作ることが出来るのです。目標を決め、それに必要な動作や処理の順番をあれこれ試行錯誤する過程を感覚的に進めることが出来るのがScratchの良いところです。ゲームを自作する場合もまずはScratchから進めていき、より本格的なものを作りたくなったら別の言語やツールを使っていくことをお勧めします。
ゲームを作る準備
ゲームを作る為にはたくさんの準備が必要になります。まずはゲームのジャンル決めです。どのようなゲームにするのか、格闘ゲームなのかシューティングゲームなのかといったゲームの大まかなジャンルを決めます。その次に実際のゲームの動きについて決めていきます。ここで自分の個性を発揮していきましょう。ただし、あまりにも複雑にすると構築が大変になるので最初の内はシンプルなゲームを作ることをお勧めします。全体の動きを考えた後はその動きを実現するために必要な命令を考えていきます。この際に必要な命令と処理の順番、条件の分岐などを考えていく必要があります。言葉にするとすごく難しく聞こえますが要するにどんな時にどんな動きをさせるかをまとめる作業です。そして最後にゲームに使う画像や音楽などの素材の準備です。これはゲーム製作を始めてからでも大丈夫ですので出来たら準備しておいたほうがいい、程度に考えて大丈夫です。これらの準備を資料にしたものを仕様書と呼び、実際の制作現場では必ず最初に用意するものになります。この仕様書がどれだけ精密でしっかりと書けているかによって作品のクオリティも変わってきます。
実際にゲームを作成していく
仕様書が出来ましたら実際に作成していきます。仕様書にある必要な動きを実現していきます。この際、複数の動きを一気に作り、後でまとめてチェックしてしまうとどの部分で不具合が起きているのか、組み合わせの問題なのかがわからなくなってしまうので1つずつ作り、その都度動作チェックをしていきましょう。Scratchの場合、各動作ごとにプロジェクトを分けてしまうのもお勧めです。その時点で動きがおかしい場合、動きを実現させるためのプログラミングがそもそも間違っていると考えられます。その部分を直していきましょう。ある程度動きが出来てきたら複数を組み合わせましょう。どのように組み合わせればよいのか、処理の順番はどうなのか、分岐の条件は等、試行錯誤しつつ組み合わせていきます。ここで不具合が出てしまった場合、先ほどの組み合わせの部分や処理、条件分岐が間違っていると考えられますのでより良い方法を探りましょう。このサイクルを繰り返していき、目的の動作を実現させます。
他の人を参考にする
先ほどのやり方はすべて自分で考えて作る場合になります。実際にはほとんどの動きは他の人の手によって実現されています。Scratchでは他の人の作品を全て、中身まで見ることが出来ます。さらにその中から気に入ったものをバックパックに入れることで自分の作品に持っていくこともできます。なのでどうしてもアイデアが出ない時や動きの実現方法が思いつかない時は一旦他の人の作品を眺めてみましょう。それが出来るのもScratchを使用するメリットです。様々な作品の中から自分の気に入ったものを探し出し、どの部分がその動きなのかを見つけ出しましょう。もしくは作った本人に尋ねてみるのもいいかもしれません。予期せぬアドバイスをもらえるかもしれませんし、なによりアイデアというものは一人では限界があります。複数人でアイデアを出し合うことでより良い作品を作り出すことが出来ます。そういった交流関係を気付いていける環境がScratchには整っています。
完成した作品をどうするか
上記で述べた作業を何度も繰り返していくことで自分の納得できる作品が出来上がったかと思います。その作品をそのまま自分だけで楽しむものとして終わらせるのもいいですが、他の人と共有してみてはどうでしょうか。Scratchでは簡単に他の人と作品を共有できます。先ほど他の人の作品を参考に、と書きましたが今度は自分が参考にされる番になるのです。しかし、参考にされるだけでは終わりません。他の人が自分の作品を実際にプレイし、感想を言ってくれます。感想はクリエイターにとって一番うれしい反応になります。頂けた感想を糧に更に面白い作品を作るためのモチベーションにしていきましょう。もしくは完成した作品に手を加えてより面白くすることもできます。公開した作品を少しづつ改良していくことをバージョンアップと呼んだりもします。ゲーム製作の最終目標は面白いゲームを作ることです。完成した後もより面白くするための政策は続いていきます。