Hola.
Para hacer lo que dices hice este código hace ya algún tiempecillo.
void CalcularTiempo(void)
{
static float tiempoAnterior = Timer.GetTime();
float tiempoActual = Timer.GetTime();
CfgSistema.time = (tiempoActual - tiempoAnterior) * 0.001f; // Lo paso a segundos
tiempoAnterior = tiempoActual;
}
Puedes sustituir Timer.GetTime() por alguna función de Windows, como timeGetTime(). El tiempo de cada fotograma (en segundos) queda almacenado en este ejemplo en la variable global CfgSistema.time.
Has de llamar a esta función una vez en cada fotograma, siempre en el mismo punto.
Para saber las FPS has de calcular la inversa de CfgSistema.time.
Espero que te sirva.
Un saludo.
Ruben3d