| 授業計画 | 
		
			| 回数 | 学習目標 | 学習項目 | 
		
			| 1 | 本科目で学習する内容を理解することが出来る。
VisualStudioを用いて、プログラムの入力とビルド・実行ができる。 | ガイダンスにて、全15回の授業で学習した内容を用いて、どのようなゲームが作れるかを確認する。
VisualStudioを用いて、テキストを参考にしながらプログラムの入力とビルド・実行の方法を学習する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 2 | メインループの役割とフレームレート、デルタタイムの概念を説明できる。 | 変数への単純な加算処理で経過時間を測り、
文字列の出力関数を使って必要な情報を画面に表示するプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 3 | 画像の描画の仕組みを説明できる。 | 用意した画像を用いて、アニメーションする画像を表示するプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 4 | キー入力状態とキャラクターの移動処理の仕組みを説明できる。 | 表示した画像を、キー入力状態を判定して画面上で移動させるプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 5 | 衝突判定処理の仕組みを説明できる。 | 円と円の衝突判定、矩形と矩形の衝突判定を行うプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 6 | 構造体によるオブジェクトの表現ができる。 | キャラクターを移動させて、画面上に置いた複数のコインを取得するプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 7 | ブレンド設定とプライオリティを用いて表示結果を制御できる。 | コインを取得したタイミングでエフェクトを生成するプログラムを作成する。
エフェクトを加算合成かつ最前面で表示するプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 8 | シーン遷移の概念と仕組みを説明できる。 | タイトル画面、インゲーム画面、リザルト画面の遷移を行うプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 9 | これまでの学習内容の定着を図る。 | 中間試験を行う。また、振り返りを通して学習の定着を図る。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 10 | 関数を活用できる。 | これまで学習した内容のうち、主要な処理を関数にしたプログラムを作成する 。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 11 | ゲームの構成要素を抽出できる。
マネージャの概念を説明できる。 | シューティングゲームを題材に、構成要素の抽出を行う。
エフェクトマネージャ、弾マネージャをプログラムで作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 12 | 状態遷移の概念を説明できる。 | シューティングゲームのプレイヤーを題材に、
Move→Dying→Deadの状態遷移のあるプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 13 | 基本的な運動の仕組みを説明できる。 | シューティングゲームの敵を題材に、
直線、左右反復、波、追尾の運動を行うプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 14 | ステージデータの概念と定義方法を説明できる。 | シューティングゲームの敵出現パターンデータを題材に、
構造体で定義されたステージデータをゲームに反映するプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 | 
		
			| 15 | UIを作ることができる。 | シューティングゲームを題材に、
スコアや残機、残り時間ゲージを表示するUIのプログラムを作成する。 | 
		
			| 【理解度確認】提出課題にて確認。 |