トップページ > ゲ製作技術 > 2011年06月26日 > C/6aPfwc

書き込み順位&時間帯一覧

1 位/141 ID中時間01234567891011121314151617181920212223Total
書き込み数1010000011101000000001007



使用した名前一覧書き込んだスレッド一覧
名前は開発中のものです。
Windowsゲームプログラミング 質問スレ

書き込みレス一覧

Windowsゲームプログラミング 質問スレ
767 :名前は開発中のものです。[sage]:2011/06/26(日) 00:27:46.94 ID:C/6aPfwc
>>766
マルチメディアタイマのイベントというのがよくわかんないんですが
それを使えばSleep()しなくてもCPUに高負荷がかかりませんか?
Windowsゲームプログラミング 質問スレ
768 :名前は開発中のものです。[sage]:2011/06/26(日) 02:36:36.47 ID:C/6aPfwc
どう監視してもSleep()に0より大きい値入れると
FPSが安定しないので
もうウェイト処理にSleep(0)だけ入れる事にした ヽ(`Д´)ノ

Sleep()の仕様で、引数に与えた値以上、戻ってこない事があるらしいから
それが原因なのかな…
Windowsゲームプログラミング 質問スレ
770 :名前は開発中のものです。[sage]:2011/06/26(日) 08:26:23.84 ID:C/6aPfwc
>>769

>それを使えばSleep()しなくてもCPUに高負荷がかかりませんか?

すみません、この上記の質問だけ教えてもらえませんか?

Yes/No?
Windowsゲームプログラミング 質問スレ
772 :名前は開発中のものです。[sage]:2011/06/26(日) 09:35:10.81 ID:C/6aPfwc
>>771
すんませんす。
timeSetEvent()で指定してコールバックで
処理するという形になるんですね。
なるほど。

ただSleep()も試行錯誤してたら
引数の数値を大きく指定するようにすれば
そこそこの精度で安定するようにはなりました。
Windowsゲームプログラミング 質問スレ
774 :名前は開発中のものです。[sage]:2011/06/26(日) 10:54:34.44 ID:C/6aPfwc
>>773
ご紹介ありがとうございます。

ただSleep()さえかけなければ
実際にはパフォーマンスカウンタを使うので
60fpsの誤差は殆どないんです。
ただCPU使用率が100%近くになったりしてたので
なるべく余った時間、CPU負荷をかけたくなく
Sleep()入れて休ませるつもりでいました。

とりあえずSleep()でも、なるべく大きな値を入れるようにしたら
fpsが安定するようになりました。
いくつかのPCで試しましたが、結構安定してます。
(パフォーマンスカウンタで計測すれば、殆ど60ピッタリです)

while(1){
stime = timeGetTime();
game_main();
if((dif = 1000 / 60 - (timeGetTime() - stime)) > 0){
Sleep(floor(dif));
}
while(timeGetTime() - stime < 1000 / 60){ Sleep(0); }
}
Windowsゲームプログラミング 質問スレ
777 :名前は開発中のものです。[sage]:2011/06/26(日) 12:38:17.18 ID:C/6aPfwc
>>776
MsgWaitForMultipleObjects ですね。
調べてみます。情報ありがとうございます^^
Windowsゲームプログラミング 質問スレ
783 :名前は開発中のものです。[sage]:2011/06/26(日) 21:04:13.27 ID:C/6aPfwc
>>778
ウィンドウズのイベントがコールバックで呼び出されるという話じゃないの??


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。