Llevo una semana y no logro solucionarlo: Quiero que si el juego corre
a 10, 40 o 100 fps una animación de movimiento se vea siempre igual,
o sea que, si la animación tiene 24 frames por segundo (la hice en
blender), y dura 2 segundos, el juego sepa determinar como mostrar las
imagenes: Si va a 12fps, que se salte frames, para que la animación
dure lo mismo, o que durante varios ciclos muestre el mismo cuadro
en caso de que valla muy rapido.
Imáginemos que tengo una animación que tiene 24 frames por cada
segundo que dura la animación:
fps_sprite = 24
duracion = 1666 # en milisegundos, o sea, en total son 40 frames
fps = 40 # El frame-rate actual del juego
Cambiar_de_cuadro_cada: fps * duracion / fps_sprite
Se supone que esto devuelve cada cuantos ciclos debemos mostrar
el siguiente cuadro de animación, pero a veces me da un flotante chico
o muy grande y no me salen las cuentas ñ_ñ, ¿alguien me ayuda?
nota- También habia pensado darle a caba animación un objeto .Clock,
el cual devuelve cuando milisegundos han pasado desde la ultima
vez que se llamo a reloj.tick(), pero me parece más complicado.