我正在用C建立一个物理引擎。 如何在C中以高精确度计算帧之间的时差(deltatime)?(我未使用任何图形API)
答案 0 :(得分:0)
这样的事情。
#include <stdio.h>
#include <time.h>
int main()
{
struct timespec t1, t2;
long delta_t = 0;
while(1) {
printf("delta_t = %d nanoseconds\n", delta_t);
clock_gettime(CLOCK_MONOTONIC, &t1);
// do something
clock_gettime(CLOCK_MONOTONIC, &t2);
delta_t = (t2.tv_nsec - t1.tv_nsec);
}
return 0;
}
该示例已在GCC 8.1.0上进行了测试。