シューティングゲーム製作技術総合 3機目
■ このスレッドは過去ログ倉庫に格納されています
0076名前は開発中のものです。
04/06/20 16:05ID:I9qRqgm/まずWin32タイマー精度が1000ms分解能
ほしい精度が1000/60ms=50/3ms分解能
dword time_prev_mul3; // ワンフレ前の時間
dword time_cur_mul3; // 現在の時間
dword time_remain_mul3; // 誤差蓄積時間
void FpsTimer60::wait(){
while((time_cur_mul3 = timeGetTime()) *3 + time_remain_mul3 - time_prev_mul3 >= 50);
time_remain_mul3 = time_cur_mul3 - time_prev_mul3 - 50;
}
remainが大きくなりすぎたら一旦remainを初期化したりする処理
連続49/3日稼動をまたぐ時の処理は省略
…という方法
これでうまく動いてるんだけどどうや!
■ このスレッドは過去ログ倉庫に格納されています