2012-04-18 7 views
1

私はわずかにアニメーション化されたアプリケーションを開発しています(C++ではopengl)。そのためには、システムができるフレームレートを知る必要があります。私が今行っていることは、最後のdisplay-actionのフレームレートを計算し、それを履歴と平均化することです。 これはわずかです:平均レートはやや跳ね上がります。 この問題は、少なくとも1回は解決されている必要があります(ファイルコピーの進行状況ダイアログなど)ので、私は考えていました:ローパスフィルタを適用すると便利でしょうか?それでは、私はどんな値を使うべきですか?私の推測では、60Hz以上の周波数をすべて除去する必要がありますか? (私のモニターは60Hzのレートでリフレッシュします)フレームレートを見積もる

+0

がbazkie_bumpercarの提案を試してみましたが、それが動作します(xは実験を)。 –

答えて

1

vsyncを無効にしない限り、平均フレームレートは奇妙です(最初はリフレッシュレートを上回る周波数が得られるので大丈夫です))

ただの勘:多分あなたはXフレーム以上の歴史の第二quartile(=中央値)を取得する必要;)の代わりに、平均:)

+0

出力ルーチンが出力されるたびに出力ルーチンが異なるため、フレームレートが不安定になります。私はそのメジアンのアイデアが好きで、本当にスパイクの影響を減らすでしょう –

関連する問題