クラス情報
学年: 8~12 (中 2~ 高 3) (このクラスに参加するには、生徒は 13 歳以上でなくてはなりません)
レッスン時間: 1 時間
対象ツール: フォートナイト クリエイティブ
クラス / 学習環境: フォートナイトがプレイ可能なデバイス。生徒 1 人につき 1 台で、インターネットに接続可能。 コンピューター室、またはノートパソコンを置ける移動式の台があることが理想的。
作成者の連絡先
著者: Steven Isaacs と Brian Dickman
Eメール: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: https://www.linkedin.com/in/steve-isaacs/ | https://www.linkedin.com/in/cleverlike
クラス/学習環境の説明
このレッスンは、コンピューター サイエンス教育週間の Hour of Code イベントで利用するためのものとしてデザインされています。
音楽のレッスンとしてデザインされているので、音楽の講座としても利用できます。 楽曲制作はゲームデザインにおける重要な要素であり、このレッスンでは、ゲーム開発コースの一環として楽曲制作を体験する機会を提供することができます。 独立したレッスンとして利用することもできますし、他の活動と組み合わせて、より大きなプロジェクトの制作に 利用することも可能です。
著者の1人であるSteve Isaacsは、ゲームデザインと開発をクエストあるいは選択ベースの学習環境として捉え、内容だけでなくプロジェクトの選択肢の面でも、学生自身の興味に基づいて学習成果を満たすために異なるアプローチを取る機会を提供するものとして指導しています。
著者の1人であるBrian Dickmanはコンピューターサイエンスを学んだあと、フルタイムのゲーム開発スタジオを運営し、人気のビデオゲーム内で娯楽と教育のコンテンツを制作しています。
レッスンの概要
ゲームのサウンドトラックは好きですか? お気に入りのゲームをプレイした後、何時間も頭の中で流れ続ける曲はありますか? ビデオゲームの音楽だけを演奏するコンサートを開くオーケストラがあるんですよ。 音楽には強い影響力があり、記憶に残ります。 デジタルプロジェクトに音楽を活用することで、体験の質を高め、コンテンツをより魅力的にすることができるのです。
このプロジェクトでは、フォートナイト クリエイティブで自作の音楽ループを作ります!
理想の結果
生徒にとっての学習の成果は?
重要な疑問/意図
他の事柄と結びつきのないスキルとして単にプログラムの書き方を学ぶのではなく、意義のある活動の一環としてコンピューターサイエンスの概念を学べるのか?
フォートナイト クリエイティブでのアクティビティでループなどといったコンピューターサイエンスの概念を学ぶことで、プログラミング環境の概念を広く理解させられるのか?
ゲーム開発における楽曲制作への理解を深めることができるのか?
ゲームを使って概念を教えることで、コンピューターサイエンスを学ぶ意欲を高められるのか?
学習成果/目標
生徒は以下のことができるようになります:
コンピューター サイエンスの概念としてのループを理解する
ループの知識をゲームにおける楽曲制作に利用する
ゲームの BGM としてループする音楽を制作する
学習のアクティビティ
ループへの導入
コンピューター サイエンスでは、ある条件が満たされるまで一連の命令を繰り返すプログラミング構造のことをループと言います。 プログラミングはループを使って値を切り替えたり、数字を合計したり、機能を繰り返したりなど、色々なことを行います。
– techterms.com から
例えば、1周が400mのトラックにいたとして、1.6km走ろうと思ったら、4周走ることになります。 これがループの一例です。 4周走り終えたら、走るのをやめることができます。
疑似コードとは、コードの概念を人に伝えやすく、理解しやすいシンプルな形式で記述する方法です。 実際のコードの場合、プログラミング言語によってそれぞれ異なるルール(あるいはシンタックス)がありますが、疑似コードであれば、何をしようとしているのかに基づいてコードを考えることができます。
疑似コードで書いたループの一例を見てみましょう。
4回繰り返す { トラックを1周する }
以下はコンピューターサイエンスにおけるループの仕組みを簡単に解説している動画です。
ループはどんなプログラミング言語でも使用することが可能です。フォートナイト クリエイティブの環境では、命令を無限に、あるいは指定の回数だけ繰り返すループを構築することができます。
アクティビティ
生徒には、フォートナイト クリエイティブでシーケンサーとミュージック ブロックを使ってループする音楽を作ってもらいます。
フォートナイト クリエイティブのシーケンサーは、繰り返す一連のイベントを作成できる便利な仕掛けです。 この仕掛けは、シーケンスそのものを実行する機能だけでなく、ゲーム内での使用方法をより細かく制御できる機能も備わっています。
シーケンサーは3次元のボリューム(幅 x 高さ x 奥行き)を生成するよう設定可能です。 起動されたシーケンサーは、ボリュームの始点から終点に向けてパルスを放ちます。 このパルスは、経路上にあるあらゆる仕掛けやオブジェクトを起動します。 この機能を利用し、シーケンサーのボリューム内にミュージックブロックを設置して音楽を再生させます。
ミュージックブロック ギャラリーは、様々な楽器の音を鳴らす音符として機能する建築用ブロックを 集めたものです。 これらのブロックは、起動時に音を再生します。 このギャラリーには、 楽器の種類に応じて色分けされたタイル/ブロックが数多く収録されています。 各ブロックには、そのブロックが再生する 音が書いてあります。 そのため、音の表記を知っていれば簡単に楽曲を制作することができます。
アクティビティの詳細については、生徒用ガイドと指導者用ガイドを参照してください。
生徒には生徒用ガイドにアクセスさせ、それに従って作業させましょう。
生徒の評価には、ダウンロード可能なルーブリックを利用してください。
外部リソース
Mark Zuckerberg Explains Loops
教育基準
1A-AP-10 シーケンスとシンプルなループを使ってプログラムを開発し、アイディアを表現したり、問題に対処したりする。
1B-AP-10 シーケンス、イベント、ループ、条件記述を含むプログラムを作成する。
1B-AP-12 既存のプログラムの一部を変更、リミックス、あるいは自分の作品に組み込み、新しいものを開発、あるいはより高度な機能を追加する。
1A-AP-14 シーケンスやシンプルなループを含むアルゴリズムにあるエラーをデバッグ(特定し修正)する。
2-AP-10 フローチャートおよび/または疑似コードを使い、複雑な問題をアルゴリズムとして扱う。
2-AP-13 プログラムの設計、実装、レビューを容易にするため、問題と副問題を小さく分割する。
2-AP-17 様々なテストケースを用い、体系的にプログラムをテストして改良する。
3A-AP-13 生徒の予備知識や個人の興味を活用し、アルゴリズムを用いたプロトタイプを作って計算の問題を解決する。
3A-AP-16 命令を開始するイベントを使用し、実用的な目的や個人的な表現のため、あるいは社会的問題に対処するため、コンピューター使って何らかのものを設計し、試行錯誤しながら開発する。
3A-AP-17 プロシージャ、モジュール、および/またはオブジェクトなどの構成要素を使い、体系な分析を通じて問題を小さく分割する。
3A-AP-22 協業用ツールを使ってチームを組んで作業し、コンピューターを使って設計、開発をする。
学際および 21ST CENTURY CONNECTIONS
このレッスンでは、プログラミング/コンピューターサイエンスに関連する分野を扱います。
21世紀型スキル:
批判的思考
創造力
コラボレーション
コミュニケーション
情報リテラシー
柔軟性
リーダーシップ
主体性
社会技能
合理的配慮および合理的変更
生徒のニーズや教育プログラム(IEP、504など)に合わせ、適宜変更と調節を行ってください。
生徒にチームを組ませることで、ペアプログラミングの手法を取り入れることができます。
生徒が解体/変更できるサンプルマップを提供してみてもよいでしょう。
必要に応じてアダプティブコントローラー/ゲームコントローラーを提供しましょう。