Programación Específica > Programación de Videojuegos
Contar Frames Por Segundo
(1/1)
ibito:
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:
Ruben3d:
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.
Espero que te sirva.
Un saludo.
Ruben3d
Navegación
Ir a la versión completa