Irrlicht Go Goを見ながら触り始めてみたんですど、これってFPSの調整のうまいやり方ってあるんでしょうか?

void FPScontrol(int tFPS, IVideoDriver *Driver, IrrlichtDevice *Device){
static int FPSflag=0;
static int Wait=0;
int fps = Driver->getFPS();
if(FPSflag == 0){
Wait=(int)(1000.0/tFPS-1000/(double)fps);
}
if(Wait > 0 ){
Device->sleep(Wait);
FPSflag=1;
}
}

こんな関数作ってFPSがtFPSになるようにさせようと思ったんですけれど、実行の最初1秒ぐらいは素のスピードのままなんです。