プログラミングのメモ帳(C/C++/HSP)

日々のプログラミングで気づいた点や小技集を紹介します。(Windows 10/XP/Vista、VC2017、HSP)

付録C ゲームソースのテンプレート

2012年03月10日 05時31分03秒 | 無料で学べる講座

このページはゲームループの基礎講座シリーズの付録Cです。
ここには、この講座で紹介してる「ゲームソースのテンプレート」である GameWinMain.h のソース・ファイルを紹介します。(戻る)

使い方

ゲーム・プログラマは、下記のソースで次の4つを記述します。

  • ゲーム全体の初期化(funcGameInit)
  • ゲーム全体の後始末(funcGameTerm)
  • ゲーム全体の進行(funcGameUpdate)
  • ゲーム全体の描画(funcGameDraw)

その他にも _tWinMain 関数内のウインドウ・クラスウインドウ・タイトルの名前を適当に修正して使います。

LPCTSTR lpClassName = TEXT("GameNameWndClass");
LPCTSTR lpTitleName = TEXT("ゲームのタイトル");
LPCTSTR lpClassName = TEXT("BlockGameWndClass");
LPCTSTR lpTitleName = TEXT("ブロック崩しゲーム");

GameWinMain.cpp

//------------------------------------------------------------------------------
// ゲームソースのテンプレート
//------------------------------------------------------------------------------
#include <tchar.h>
#include <Windows.h>    // WinMM.Lib,MSImg32.Lib
#include "GameMainLib.h"

//------------------------------------------------
// 記号定数(OK)
//------------------------------------------------
#define SCREEN_FPS      (60)        // スクリーンの更新間隔(FPS)
#define SCREEN_WIDTH    (640)       // スクリーンの横幅(32ドット×20個)
#define SCREEN_HEIGHT   (480)       // スクリーンの高さ(32ドット×15個)

//------------------------------------------------
// ゲーム全体の初期化
//------------------------------------------------
extern VOID funcGameInit(HWND)
{
    
    
}

//------------------------------------------------
// ゲーム全体の後始末
//------------------------------------------------
extern VOID funcGameTerm(HWND)
{
    
    
}

//------------------------------------------------
// ゲーム全体の進行
//------------------------------------------------
extern VOID funcGameUpdate(HWND)
{
    
    
}

//------------------------------------------------
// ゲーム全体の描画
//------------------------------------------------
extern VOID funcGameDraw( HDC hDC )
{
    
    
}

//------------------------------------------------
// メイン関数(OK)
//------------------------------------------------
extern int WINAPI _tWinMain( HINSTANCE hInstance, HINSTANCE, LPTSTR, int nCmdShow )
{
    LPCTSTR lpClassName = TEXT("GameNameWndClass");
    LPCTSTR lpTitleName = TEXT("ゲームのタイトル");
    
    if ( GameMainInit(SCREEN_WIDTH,SCREEN_HEIGHT,SCREEN_FPS) ){
        if ( GameMainCreate(hInstance,lpClassName,lpTitleName,nCmdShow) ){
            return GameMainRun( funcGameInit, funcGameTerm, funcGameUpdate, funcGameDraw );
        }
    }
    return GameMainErrMsg( NULL, TEXT("WinMain関数") );
}

//------------------------------------------------------------------------------
// End of GameWinMain.cpp
//------------------------------------------------------------------------------

関連記事



コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 付録B ゲームのフレームワー... | トップ | PlgBltで図形を回転するサンプル »
最新の画像もっと見る

コメントを投稿

無料で学べる講座」カテゴリの最新記事