Programación Específica => Programación de Videojuegos => Mensaje iniciado por: ibito en Lunes 23 de Febrero de 2004, 07:03
Título: Contar Frames Por Segundo
Publicado por: ibito en Lunes 23 de Febrero de 2004, 07:03
yo se que allegro tiene unas funciones de TIMERs y cosas asi, pero como puedo contar sin ayuda de una libreria, los frames por segundo? como puedo saber cuanto tiempo (segundos) han pasado de un ciclo a otro? :blink:
Título: Re: Contar Frames Por Segundo
Publicado por: Ruben3d en Lunes 23 de Febrero de 2004, 21:36
Hola.
Para hacer lo que dices hice este código hace ya algún tiempecillo.
Código: Text
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.