DirectXとC++でゲームを作っています。
これまでに、とりあえず何も描画しないソースを作りました。
しかし、時間計測すると1ループするのに16~18ミリ秒かかるみたいです。
どこにそんな時間がかかるのか分かりません。
まだ描画も何もしていないため1~2ミリ秒ほどで1ループくらいできるだろうと思っていました・・・。
ヒントでもいいので教えていただけると嬉しいです。
(すでに2日も悩んでいました・・・)
ちなみに、メインループは以下のように作りました。
C++
1for(;;) 2{ 3 if (PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE)) 4 { 5 // WM_QUITメッセージを受け取る(0) または エラー発生時(-1)にループを終了する。 6 if (GetMessage(&msg, NULL, 0, 0) <= 0) 7 { 8 break; 9 } 10 TranslateMessage(&msg); 11 DispatchMessage(&msg); 12 } 13 else 14 { 15 const DWORD clear_flag = D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER; // Zバッファの設定 16 const D3DCOLOR clear_color = D3DCOLOR_XRGB(11, 18, 155); // 背景色 17 // シーンのクリア 18 d3dDevice_->Clear(0, NULL, clear_flag, clear_color, 1.0f, 0); 19 // デバイスに描画開始を通知 20 d3dDevice_->BeginScene(); 21 // デバイスに描画終了を通知 22 d3dDevice_->EndScene(); 23 // 画面をバックバッファと入れ替える 24 d3dDevice_->Present(NULL, NULL, NULL, NULL); 25 } 26}

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/02/03 12:00