授業計画 |
回数 |
学習目標 |
学習項目 |
1 |
プレイヤを追従するカメラ制御が出来る。 |
追尾対象の設定。 追尾の移動方法。 カメラとの連携。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
2 |
キャラクタの状態遷移が出来る。 |
状況・状態・ユーザー入力(思考)による状態遷移の方法。 |
【理解度確認】実習結果(課題提出状況)により判断する |
3 |
キャラクタの状態遷移が出来る。 |
状況・状態・ユーザー入力(思考)による状態遷移の方法。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
4 |
キャラクタ同士の接触判定とダメージ処理が作成出来る。① |
キャラクタ同士の接触判定・ダメージ処理の考え方。 接触判定を受け付けるメソッド。
ダメージ処理を受け付けるメソッド。 プレイヤと敵の接触判定。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
5 |
イベント実行エンジンのプログラムが作成出来る。① |
イベント実行エンジンの仕組みとイベントスクリプト。 シングルトン。
実行エンジンの実装(1行読み込み、文字列の加工、ヘッダに対応した処理の呼び出し) |
【理解度確認】実習結果(課題提出状況)により判断する。 |
6 |
イベント実行エンジンのプログラムが作成出来る。② |
メッセージ表示。 画像表示。 イベントフラグと条件分岐。 フェードアウト・フェードイン。
画像の読み込み・入れ替え。 イベントファイル変更。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
7 |
アクションゲームにイベント実行エンジンを組み込む事が出来る。① |
イベントトリガー。 アイテムをトリガー化。 イベント中のタスク停止。
キャラクタオブジェクトの出現。 任意パラメータの追加。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
8 |
アクションゲームにイベント実行エンジンを組み込む事が出来る。② |
マップの切り替え。 キャラクタ情報の変更。 キャラクタの消去。
ゲーム開始時の準備もイベント処理で行う。 敵の全滅チェック。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
9 |
セイムゲームのプログラムが作成出来る。① |
セイムゲームのゲームルール。 ゲーム盤の作成・石の配置とシャッフル。 連結範囲の検出。
選択範囲の強調表示。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
10 |
セイムゲームのプログラムが作成出来る。② |
石を消す処理。 得点の表示。 石を落とす処理。 石を右に寄せる処理。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
11 |
移動範囲チェックと最短ルート検出のプログラムが作成出来る。① |
シミュレーションゲームの移動範囲検出アルゴリズム。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
12 |
移動範囲チェックと最短ルート検出のプログラムが作成出来る。② |
最短ルートの検出。 (別)ノードを仕込むほぼ0コストのルート検出アルゴリズム。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
13 |
追尾するキャラクタのプログラムが作成出来る。 |
直接対象方向に進む追尾。 旋回を用いる追尾。(外積)
視認距離・視野角の実装。(内積) ブレ防止。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
14 |
テトリスのプログラムが作成出来る。① |
テトリスのゲームルール。 ゲーム盤の作成。 「次」のブロックの実装。 操作ブロックの実装。
得点とレベルの追加。 STL::mapの紹介。 操作ブロックの制御・接触判定。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |
15 |
テトリスのプログラムが作成出来る。② |
操作ブロックのゲーム盤への書き込み。 ゲームオーバー判定。 ブロックを消す処理・
落とす処理。 得点の加算・レベルの変更。 操作性向上。 多人数同時プレイ。 |
【理解度確認】実習結果(課題提出状況)により判断する。 |