我在GLUT中遇到计时器问题。
glutGet(GLUT_ELAPSED_TIME)
仅获得具有秒精度的时间(1000、2000、3000 ...)
和
glutTimerFunc(...)
仅在millis参数设置为大于1000时有效。
我不知道GLUT如何测量时间 但是我认为我的系统时间设置有问题。
如何在OpenGL中获得毫秒精度的时间?
答案 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;
}