测量OpenGL程序帧速率的最佳方法是什么?
答案 0 :(得分:5)
在主循环开始时粘贴一个计时器并测试返回那里所需的时间。
在Windows下,您可以执行以下操作:
double oldTime = 0.0.
while( !exit )
{
__int64 counter;
QueryPerformanceCounter( (LARGE_INTEGER*)&counter );
__int64 frequency;
QueryPerformanceFrequency( (LARGE_INTEGER*)&frequency );
double newTime = (double)counter / (double)frequency;
double frameRate = 1.0 / (newTime - oldTime);
oldTime = newTime;
// Rest of your game loop goes here.
}
答案 1 :(得分:3)
测量经过的时间并计算帧数。 将一个除以另一个以给出帧速率。
当经过的时间达到一秒或更长时间如果你想在更长的时间内平均它,重置两个计数并重新开始。
答案 2 :(得分:1)
SPF (Seconds Per Frame)是一个提供更多信息的指标。
答案 3 :(得分:0)
如果您使用的是Windows,请使用Fraps。