CMglEzGameFrame::StartWindow()

int StartWindow( int nWinWidthSize, int nWinHeightSize,
		LPTHREAD_START_ROUTINE mainThreadFuncPtr,
		const char *szWindowTitle="No title", BOOL bFullscreen=FALSE );


概要

ウインドウを作成し、DirectX関連等の初期化後 mainThreadFuncPtr
にて指定されたコールバック関数を別スレッドとして開始させます。


引数

nWinWidthSize - ウインドウの横幅
nWinHeightSize - ウインドウの高さ
mainThreadFuncPtr - メイン処理として呼び出されるコールバック関数
szWindowTitle - ウインドウのタイトル(省略可能)
bFullscreen - フルスクリーンにするか否か(省略時ウインドウモード)


解説

mainThreadFuncPtr は以下のような宣言である必要があります。

BOOL 任意の関数名( CMglEzGameFrame *任意の変数名 );

pFrame には、そのコールバック関数を呼び出した CMglEzGameFrame クラスの
インスタンスへのポインタです。このコールバック関数の中で何をすべきかは
チュートリアルを見れば大体分かります。

このコールバック関数が復帰した場合、終了処理を行った後に StartWindow() は
終了します。このコールバック関数の復帰値は BOOL 型ですが、
現在使用されていません。また、pFrame->DoFpsWait() がFALSEである場合、
コールバック関数は即座(と言ってもある程度・・・1フレーム分くらいの猶予はある)
に復帰しなければいけません。

コールバック関数内からMGL例外が上がり、それがキャッチされなかった場合、
StartWindow() はデフォルトのエラーメッセージダイアログを表示します。

 
 
戻る