9 作品づくり
部[作品づくりプロジェクト]では,Squeakを使って,オリジナル作品を作るプロジェクトに挑戦します.
まずは,どんな作品を作るかを考える「企画」からスタートです.次に画面の移り変わりや,
作品に登場するキャラクターの動きを決めます.この作業を「仕様」を作成するといいます.
作るべきものが決まったら,作る順番や役割分担を「スケジューリング」します.
スケジュールに従って,タイルを組み立ててスクリプト作っていく「実装」に入ります.
プログラミングに関するキーワード
Squeakに関するキーワード
なし
9.1 作品作りのプロセス
- M先生
- さて,いよいよオリジナルの作品作りに挑戦しようか.
- Tさん
- 先生,作品とは何ですか?
- M先生
- Squeakでは色々な作品を作ることができる.ゲームやシミュレーション,
ユーザの操作に反応する絵本みたいなものも作れるね.
- Sくん
- 色々できますね.
- M先生
- では,作品をどのような手順で作っていったら良いのかを紹介するよ.
丁度よいから,SくんとTさんで協力して1つの作品を作ってみたらどうだい?
- Tさん
- は,はい...
- Sくん
- えー,そんなに嫌がるなよー.
- M先生
- まずは大まかにどのような手順で作品を作っていったらよいかを紹介しよう.
作品を作る作業の流れは以下のようになる.
- 企画の立案
- 仕様の作成
- スケジューリング
- 実装
- プレゼンテーションと評価
- 報告書の作成
- M先生
- このプロジェクトでは4つめの「
実装
」までを紹介しよう.
「プレゼンテーションと評価」,「報告書の作成」については次のプロジェクトで解説するね.
- Sくん
- 分かりました.
- M先生
- 実装までの各作業で,どのような
成果物
ができるのかも整理しておこう.
- Sくん
- 先生,成果物ってなんですか?
- M先生
- 作業をすると出来る「もの」のことだよ.一覧表を書いたので,見てくれたまえ.
作業 |
成果物 |
企画の立案 |
企画書 |
仕様の作成 |
仕様書 |
スケジューリング |
作業手順書・スケジュール表 |
実装 |
作品 |
- Sくん
- なるほど,「実装」まで終わると作品ができるんだ.
- Tさん
- 企画書,仕様書,作業手順書・スケジュール表は全て文書ですね.
- M先生
- そうだね.これから,1つずつ作業を解説していこう.
9.2 企画の立案
- M先生
- まずは「
企画
の立案」だ.
なにより先に,どんな作品を作るかを決めないといけないということだね.
どんな作品を作るかを書いたものが「
企画書
」だ.
- Tさん
- はい.これはSくんと相談しながら決めればよいですね.
- M先生
- この段階では,完成する作品の大まかなイメージを共有することが大事だ.
細かいことはこの次の「
仕様
の作成」で考えればいい.
- Sくん
- 作品のコンセプトを決めるってことですね.
- M先生
- そのとおり.
- Tさん
- 具体的にはどんなことを考えればよいのでしょうか?
- M先生
- 企画書を作るためのテンプレートを紹介しよう.大体以下のようなことを決めればOKだよ.
-
タイトル・キャッチコピー
タイトルが長くなるなら,キャッチコピーを付けてタイトルを短くする方法もある.
-
作者・作成日
グループの場合は,全員を記入しておくこと.(所属なども忘れずに)
-
概要
作品の概略を100〜200文字で書く.箇条書きでもよい.
-
対象
作品を鑑賞したり,ゲームをプレイしたりするユーザをなるべく詳しく書く.(対象年齢など)
-
画面イメージ
手書きでも良いが,スキャンして張り付けること.
- M先生
- これに加えて,作成者や日付なんかも入れておくとよいかな.
- Sくん
- はい.じゃあ,Tさんと相談してみます.
1時間後.....
- Sくん
- 先生,できました.
- Tさん
- 今回は「金魚すくい」を題材にしたゲームを作ろうと思います.
- M先生
- よーし.大体いいね.企画書の仕上がりをチェックするときのポイントを簡単に整理しておいたよ.
- 概要に重要なポイントがもれなく書かれているか,また細かすぎることが書いていないか
- 対象者がきちんと絞られているか
- 画面イメージだけで作品の概要が分かるかどうか(余分なものが描いていないか,大切なものが抜けていないか)
- M先生
- タイトルやキャッチコピーに関しては,個人のセンスもあるから,一概に良い悪いは言えないね.
- Sくん
- 分かりました.
No.
8-1 やってみよう! |
作りたい作品を決めて,企画書を書きましょう.
|
9.3 仕様の作成
- M先生
- 次は,「
仕様
」を作成しよう.
- Sくん
- 先生,仕様とは何ですか?
- M先生
- 企画書だけで,作品を完成させることはできるかい?
- Sくん
- 大体の内容は分かりますが,細かいところでTさんの考えているものと違うかもしれませんね.
- Tさん
- そうですね.例えば「金魚がどのように動くのか」とかは,企画書だけからは分かりません.
- M先生
- ゲーム全体の流れと,登場するキャラクターの外見や動きを少し細かく考えることが必要になるだろう.
この作業を「仕様の作成」と呼ぶんだ.
仕様を記述したものが「
仕様書
」だね.
- Sくん
- なるほど.仕様に関しては,テンプレートはありますか?
- M先生
- 作る作品や登場するキャラクターによって一概に決められないので,テンプレートは自由に記述ができるものを用意しておいた.
工夫して書いてみてくれたまえ.
- Sくん
- はい.がんばります.
3時間後.....
- Tさん
- 先生,仕様書ができました.
ゲームの流れ図
も書いてみました.
- M先生
- 結構時間のかかる作業だろう?仕様書をチェックするときのポイントを簡単に整理しておいたよ.
- 画面が分かりやすく整理されており,ユーザの使い勝手が考慮されているか
- 仕様の記述に曖昧な点,矛盾点,取りこぼしがないか
- それぞれのキャラクターの仕様が,分かりやすいように分類されているか
- M先生
- ただ細かく書けばよいというものではなく,ポイントを抑えた記述ができているかが重要だよ.
No.
8-2 やってみよう! |
作品の仕様書を書きましょう.
|
9.4 スケジューリング
- Sくん
- いよいよ作りはじめですか?
- M先生
- あとちょっとだ.次は「
スケジューリング
」をしよう.
- Tさん
- 具体的にどんなことを考える必要がありますか?
- M先生
- 大体次の3点だと思えばよい.
- 何をどのような手順で作るか?
- どのくらいの期間で作るか?
- 誰がつくるか?
- Sくん
- 1人で作品を作る場合は,3番目はいりませんね.
- M先生
- まあ,そういうことになるけど,1番目と2番目は1人で作品作りをする場合でも重要だよ.
- Sくん
- 何をどのような手順で作るのかについては,どんな事を書けばいいんですか?
- M先生
- どのような順番で作品作りを進めていけばいいかを考えて,作業を分解していくとよい.
ポイントは,ゲームの中心となる部分をなるべく早い段階で作ってしまうことかな.
時間が余ったらやりたいことは後の方に回しておけばよい.
- Tさん
- 優先順位を考えるってことですね.
- M先生
- あとは,テストが簡単に出来るかについても考える必要がある.スタートボタンやリセットボタンをはやめに作っておけば,
テストが楽になるよね.
- Sくん
- なるほど.
- M先生
- また.スケジュールの大きな区切り目にチェックポイントを設けておくとよい.これを「
マイルストーン
」という.
- Sくん
- なぜそのようなものが必要なのですか?
- M先生
- 作業を進めていくうちに,順調に進んでいるかをチェックする必要があるよね.
マイルストーンが立っていれば,そのチェックがやりやすくなる.また,計画を立てるときにはマイルストーンから決めるとやりやすい.
- Tさん
- 例えば?
- M先生
- そうだね.締切りから逆算してスケジュールを立てるなら,締切りの1日前には完成しておきたいと考える.
そうすると,「ひとまず完成」というマイルストーンは締切り日の一日前になるね.
そうやってどんどん逆算していけば,ある程度のスケジュールの骨組みはできるだろ?
- Sくん
- なるほど.
- M先生
- あとは分担を決めよう.作業手順が決まれば,同時平行で進められる作業が分かるので,
分担を決めるのも楽なはずだよ.
1時間後.....
- Sくん
- 先生,できました.
- Tさん
- 作業手順書はこうなりました.
1. オブジェクトの描画
1.1 水槽の絵を描く
1.2 金魚の絵を描く(アニメーション用に2種類用意する)
1.3 ポイの絵を描く
1.4 おけの絵を描く
2. プログラミング
2.1. 金魚のスクリプト作成
2.1.1 ひれを動かすアニメーションを作る
2.1.2 金魚が泳ぐようにする
2.2. スタート,リセットボタンの作成
2.2.1 スタートボタンを押すと,ゲームが開始できるようにする
2.2.2 リセットボタンを押すと,ゲームがリセットできるようにする
2.3. ポイのスクリプト作成
2.3.1 ポイをマウスで動かせるようにする
2.3.2 ポイをクリックで水に浸せるようにする
2.4. 金魚をすくうスクリプト作成
2.4.1 金魚をポイで捕まえられるようにする
2.4.2 ポイを使っておけに金魚を入れるようにする
2.5. 耐久度バーのスクリプト作成
2.5.1 耐久度を表示するバーを描く
2.5.2 ポイが水に使っている時に耐久度を減らすようにする
2.5.3 耐久度が0になるとポイが破けるようにする
- Sくん
- スケジュール表はこうです.真ん中に矢印が描いてある部分は二人で協力して作業する予定です.マイルストーンは3つ設定してみました.
図で「MS」と書いてあるのがそうです.
- M先生
- いいね.作業手順を考えるということは広い意味でのプログラミングだ.
運動会や演奏会で配られるスケジュールのことをプログラムっていうでしょ?じゃあ,ポイントを整理しておこう.
- 作業手順が正しいかどうか
- 余裕を持った計画であるか
- 計画を全て遂行できなくとも,作品として意味のあるものが早い段階で完成できるように考えられているか
- マイルストーンが細かく設定されすぎていないか,逆に大まかすぎないか
- 同時平行で作業できない仕事を分担していないか
No.
8-3 やってみよう! |
作品づくりの作業手順書とスケジュール表を作りましょう.
|
9.5 実装
- M先生
- あとは「
実装
」を計画通りに進めるだけだね.
- Sくん
- 実装って何ですか?
- M先生
- Squeak上でタイルを組み合わせて,実際にプログラムを作る作業のことだよ.
- Tさん
- 何か注意することはありますか?
- M先生
- 仕様書を見ながら作っていくことになると思うけれど,難しくて実装に手間がかかりすぎる部分は,
スケジュールも参考にしながら,簡素化する勇気も重要だね.
- Sくん
- 人生あきらめが肝心ですよね.
- M先生
- あとは,実装で行き詰ったら,フローチャートを使ってプログラムを整理して理解してみるということかな.
つまり,実装で行き詰ってしまったら,
設計
してみることが重要だね.
無理にフローチャートから書くことはないけれど,ずっとコンピュータに向かって作業をしていては行き詰ることもある.
- Sくん
- 分かりました.
- M先生
- 最後に,実際にかかった作業時間を記録しておくこと.最後の報告書を書くときに使うから.では,がんばってね.
No.
8-4 やってみよう! |
作品を実装しましょう.
|