[過去ログ] SDLスレ (987レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
859(4): 名前は開発中のものです。 [sage] 2005/08/10(水) 21:58:53 ID:sHNa10sC(1) AAS
とりあえず、
while ( nowTime - preTime < 16 )
{
SDL_Delay( 0 );
}
のほうがいいよ
タイマの精度に期待出来ないことも多々あるんで、待ちすぎが起こりやすいから
861: 855 [sage] 2005/08/11(木) 11:06:48 ID:s0SfDH7M(1/2) AAS
>>859
それnowTimeもpreTimeも更新されないんじゃ?
具体的なコードが見たいんですけど駄目ですか?>>ALL
862(2): 名前は開発中のものです。 [sage] 2005/08/11(木) 13:55:51 ID:7JeDKIu2(1) AAS
// ここで描画やらなにやら
while ( SDL_GetTicks() - preTime < 16 )
{
SDL_Delay( 0 );
}
preTime = SDL_GetTicks();
>>859じゃないけど、普通に考えればこうでしょう。
1から100まで全部与えられるのを待ってないで考えましょう。
867(1): 859 [sage] 2005/08/11(木) 19:06:56 ID:W/ukyUzH(1) AAS
うわ、適当に書いたんで思いっきりミスしてるな orz
>>862フォローthx!
872: 859 [sage] 2005/08/12(金) 04:23:14 ID:DYAIzoXI(1) AAS
あー、いい加減な書き方したのはスマンかったね
お詫びの意味も込めて、前作ったゲームのを調べてみた
const float FRAME_TIME = 1000.0f / 60.0f;
float timer_diff = 0.0f;
while (...) { // ループ
float old_timer = SDL_GetTicks() - timer_diff;
// 描画等
while ((SDL_GetTicks() - old_timer) < FRAME_TIME) {
SDL_Delay(0);
}
timer_diff = SDL_GetTicks() - old_timer - FRAME_TIME;
}
途中を色々はしょった時にミスが入ってる可能性はあるが、こんな感じだった
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.033s