【发布时间】:2019-03-31 08:48:33
【问题描述】:
我正在用 C 语言构建一个物理引擎。 如何在C中以高精度计算帧之间的时间差(deltatime)?(我没有使用任何图形api)
【问题讨论】:
标签: game-physics physics physics-engine
我正在用 C 语言构建一个物理引擎。 如何在C中以高精度计算帧之间的时间差(deltatime)?(我没有使用任何图形api)
【问题讨论】:
标签: game-physics physics physics-engine
类似的东西。
#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 测试的示例。
【讨论】: