最大FPSをどのマシンでも一定にする

fps-synchronize.png

目的

スペックの良いマシンでも、悪いマシンでも同じ速度で動かしたいため。
スペックの良いマシンでゲームをしたら、敵の動きがやたら速くて難易度が倍増、なんてことがあってはならないからだ。
会社のPCは60Hzだった。
アクションゲームなら、60fps 程度、RPGなら 30fps がいいらしいよ。

void idle(){
    static DWORD last_time=timeGetTime();
    DWORD time=timeGetTime()-last_time;
    if(time>17){//60FPS=1.0/60.0=16.6666
        //大体17msec経ったら更新する
        last_time=timeGetTime();
        glutPostRedisplay();
    }
 
}

サポートサイト Wikidot.com