シーン


概要

シーンとはゲーム内の様々な場面のことです。
「タイトル画面シーン」や「ステージ選択シーン」「ゲームシーン」等があり、
画面構成が変更される画面を「シーン」として考えます。

シーン内の処理の流れ

シーン内の流れは基本形が決まっており、以下のような流れで進みます。

gmpg_0104

①.初期化

初期化では以下の事を行います。

初期化で行うこと
リソースの読み込み このシーンで読み込むリソースの読み込みを行います。
リソースの数が多い場合はフリーズと勘違いされないように
ローディング画面を作成します。
オブジェクト作成と初期化 ゲーム開始時に必要なオブジェクトの作成と初期化を行い
シーンを開始できるようにします。
上記の処理が完了したら②の「ゲームメイン処理」へ進みます。

②.ゲームメイン処理

シーンのメイン処理を行います。
終了するまでは③「終了」へ進みません。

ゲーム処理 シーンで行うべき処理を実行します。
  プレイヤーの挙動
  敵のAIによる行動
  スコアの加算等
描画処理 ゲーム処理の結果を画面に描画します。

③.終了

シーンで使用したリソースや動的オブジェクトを解放します。
これはメモリリーク対策なので、必ずやってください。
終了処理が終わったら次のシーンへ進みます。

シーン切り替え

シーンの切り替え処理は、基本的にゲームメイン処理中に次のシーンを決めます。
切り替えのきっかけとして「クリア」「体力0」「リタイア」等があります。
	
gmpg_0105

ゲームループとシーンの関係

ゲームループの中でシーン毎に処理を分ける理由は
ゲーム全体を管理しやすくすることにあります。
ゲームは全体として作業を洗い出すと数が多すぎて管理できません。
それをシーン毎に分けることでそれを作業項目の大項目とすることができます。
その大項目として分けたシーン毎に作業を洗い出すことで、
細かく作業を洗い出すことができます。

シーン分けのメリット

開発での作業の管理がしやすく、プログラマーはシーン毎に
ファイル分けや作業担当を決めれる

gmpg_0106