シーンのcppファイルにある関数について説明します。
用意されているシーンファイルは基本的に6つの関数で構成されています。
最初から用意されている「SceneGame.cpp」を元に、それぞれの大まかな役割について書きます。
//=============================================================================
// コンストラクタ
// 引 数:Engine* エンジンクラスのアドレス
//=============================================================================
SceneGame::SceneGame(Engine *pEngine) : Scene(pEngine)
{
}
|
コンストラクタ関数です。
エンジンクラスのポインタが引数として渡されています。
このシーンでのみ使用する変数などを追加した場合、初期化リストへ追加する事が出来ます。
//=============================================================================
// デストラクタ
//=============================================================================
SceneGame::~SceneGame()
{
Exit();
}
|
デストラクタ関数です。
後述する「Exit関数」を呼び出しています。
このシーンでのみ使用した領域の解放などを追加する事も出来ます。
//=============================================================================
// シーンの実行時に1度だけ呼び出される開始処理関数
//=============================================================================
void SceneGame::Start()
{
}
|
この関数はシーンの開始時に1度だけ呼び出される関数です。
シーン開始前にリソースを追加する、BGMを再生する、などの処理を書きます。
ただし、大量のリソースを追加すると実行の遅延につながる恐れがあります。
※このシーンでのみ使用する変数の初期化などはコンストラクタ関数の初期化リストで行ってください。
//=============================================================================
// シーンの実行時に繰り返し呼び出される更新処理関数
//=============================================================================
void SceneGame::Update()
{
}
|
各種キーの状態チェック、変数の更新、クラスオブジェクトの関数呼び出しなどを記述します。
実行中に繰り返し呼び出される関数ですので、1フレームで実行するプログラムを書いてください。
//=============================================================================
// シーンの実行時に繰り返し呼び出される描画処理関数
//=============================================================================
void SceneGame::Draw()
{
}
|
描画に関するコードを記述する関数です。
画像、文字などの描画はここに記述します。
//=============================================================================
// シーンの終了時に呼び出される終了処理関数
//=============================================================================
void SceneGame::Exit()
{
}
|
シーンの終了時に1度だけ呼び出される関数です。
リソースの解放などに使用します。
ここまでで準備は終わりです。
次は実際に何か作ってみましょう。