ちょいと研究含めて塗った。
同日17:05
不意にプログラミングの事が頭をよぎった。
神の啓示だと思ってDXライブラリの中身を覗いた。
とりあえず初期化関数について解析。
DxLib_Init()
場所:DxGateway.cpp
戻り値:0=成功、-1=失敗
extern int DxLib_Init( void )
{
int Result ;
// 既に初期化済みの場合は何もせず終了
if( WinData.DxLib_InitializeFlag == TRUE ) return 0 ;
/*クリティカルセクションにおける衝突回避
DxWin.cpp:CheckConflictAndWaitDxFunction関数*/
DXFUNC_NET_BEGIN
Result = NS_DxLib_Init(); //下記
/*クリティカルセクション開放
DxWin.cpp:PostConflictProcessDxFunction関数*/
DXFUNC_NET_END
return Result ;
}
NS_DxLib_Init();
場所:DxWin.cpp
戻り値:0=成功、-1=エラー発生
ソースコード割愛。
・解像度の使用可能確認
・DirectXのver違いによる初期化対処
・ファイルアクセス、画面カラー、fps取得といった初期化処理
・ストリームデータ用ポインタ配列初期化
・DirectInput、Sound、Draw系の初期化
・その他諸々
流石、これは大変な処理だな、と思った。
さて、素に戻る。