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