Физический движок: вычисление дельта-времени - PullRequest
0 голосов
/ 31 марта 2019

Я строю физический движок на C. Как рассчитать разницу во времени с высокой точностью между кадрами (deltatime) в C? (Я не использую какие-либо графические API)

1 Ответ

0 голосов
/ 21 июня 2019

Примерно так.

#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.

...