Skip to content

Instantly share code, notes, and snippets.

@baobao
Created Nov 14, 2018
Embed
What would you like to do?
FPSを意識したループ処理の部分コード
void Loop()
{
// StopWatchの再スタート
sw.Restart();
Draw();
// 描画処理経過時間(ミリ秒)を取得
var elapsedMilliSec = sw.ElapsedMilliseconds;
// fpsをミリ秒に変換して、経過時間の差分をSleepTimeとする
var sleepTime = 1000 / fps - elapsedMilliSec;
if (sleepTime > 0)
{
// SleepTimeが0未満ならフレーム落ち
// スレッドを待機させてFPSを再現する
Thread.Sleep((int)sleepTime);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment