GPGAが考えてるゲームプログラム構築(4)
以前記述していた、ゲーム製作の考え方の続きです。
タイトルの背景オブジェクトです。
オブジェクトの量にもよりますが、一オブジェクトに付き一ファイルで作成していきます。
ここで言う一ファイルはcppファイルとhファイルを合わせたものを言います。
まずは、ヘッダーファイルです。
次にcppファイルです。
TitleBg.h/*!
* @brief 背景
*/
class TitleBg : public TitleBase
{
public:
/*!
* @brief コンストラクタ
*/
TitleBg();
/*!
* @brief デストラクタ
*/
virtual ~TitleBg();/*!
* @brief モード
*/
enum
{
MODE_INIT, //!< 初期化
MODE_DRAW, //!< 描画
};/*!
* @brief アクション
*/
virtual void Action();
/*!
* @brief 描画
*/
virtual void Draw();
};
これで終了です。
TitleBg.cpp/*!
* @brief コンストラクタ
*/
TitleBg::TitleBg()
{
}
/*!
* @brief デストラクタ
*/
TitleBg::~TitleBg()
{
}
/*!
* @brief アクション
*/
void TitleBg::Action()
{
switch (m_ulMode){
// 初期化処理
case MODE_INIT :
m_ulMode = MODE_DRAW;
m_lXpos = 0;
m_lYpos = 0;
m_ulTexIndex = ・・・;
break;// 描画時の処理
case MODE_DRAW :
break;
}
}
/*!
* @brief 描画
*/
void TitleBg::Draw()
{
// 描画処理 仮にDrawImageという描画関数があった場合
DrawImage(m_ulTexIndex, m_lXpos, m_lYpos);
}
今回、背景はただ表示するだけなので、Action関数や、Draw関数内で特別な処理をしていません。