Hola amigos!
Tengo un problema con un juego que quiero hacer, y es que al calcular los desplazamientos y la física en base al frame rate, a la larga varia el juego. El problema es que dependiendo del numero de objetos visibles van variando los fps continuamente de manera casi descontrolada, y por tanto los desplazamientos y los cálculos varían, que aunque lo hacen muy ligeramente, a la larga se va acumulando el defecto de manera que trascurrido un tiempo todo acaba en diferente lugar de como estaba previsto.
¿existe una solución robusta para esto o en determinadas situaciones no sirve y es mejor hacer fijos los cálculos y los fps?.
Hay tres soluciones que se me ocurran:
1 - Fixed logic rate with frameskip.
Que es la logica en tiempo fijo y el render con frameskip.
2 - Fixed logic rate with interpolated render.
La logica en tiempo fijo y el render por interpolacion de estados de la logica segun el tiempo.
3 - Clamped rate.
Pones limites inferiores y superiores, si es menor a tal haces un sleep hasta alcanzarlo, si es mayor lo divides en varias partes hasta que sea menor y asi actualizas la logica en un for loop.
Saludos