GLUT的精度达不到毫秒制

时间:2018-09-21 19:12:12

标签: c++ opengl timer glut

我在GLUT中遇到计时器问题。

glutGet(GLUT_ELAPSED_TIME)仅获得具有秒精度的时间(1000、2000、3000 ...) 和 glutTimerFunc(...)仅在millis参数设置为大于1000时有效。

我不知道GLUT如何测量时间 但是我认为我的系统时间设置有问题。

如何在OpenGL中获得毫秒精度的时间?

1 个答案:

答案 0 :(得分:0)

正如上面的注释中已经提到的,您可以使用更可靠的C ++日期和时间实用程序,例如std::chrono库。这是一个简单的示例:

#include <iostream>
#include <chrono>

int main()
{
    const auto start = std::chrono::high_resolution_clock::now();

    // do something...

    const auto end = std::chrono::high_resolution_clock::now();

    std::cout << "Took " << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count() << " ms\n";

    return 0;
}