我试图在我的立方体渲染程序中显示我的每秒帧数。我想看看它的表现。那么,我该怎么做呢?我已经对此进行了研究,但是我看到的示例使用了多个类并且仍然不起作用,或者它们使用了我没有的库。有没有办法通过使用像 ctime 这样的预安装库来获得 FPS?我正在使用带有 C++ 的 OpenGL。
这是我的(空)函数:
void GetFPS()
{
}
然后我在我的渲染函数中显示我的 FPS:
std::cout << xRot << " " << yRot << " " << zRot << " " << FPS << "\n"; //xRot, yRot, and zRot are my cube's rotation.
我的程序设置为 60FPS,但我想查看实际的 FPS,而不是设置的内容。
原文由 Xenonic 发布,翻译遵循 CC BY-SA 4.0 许可协议
您必须使用
clock()
对 2 个不同的时间间隔进行采样,但是请注意存在几个问题:clock()
你会得到 0 很多次,有时你会测量一个实时(在我的情况下它只是跳跃 15⁄16 毫秒)去做:
当你做一些需要几秒钟的事情时,上面的代码也可以工作。我做了一个每秒更新的计算,你也可以更频繁地更新它。 (请注意,我在大多数需要 FPS 的项目中都使用该代码)