En mi motor de juego, hay objetos que deben actualizarse periódicamente. Por ejemplo, una escena puede reducir su alfa, por lo que configuro un intervalo que lo haga. Además, la cámara a veces necesita sacudirse un poco, lo que requiere interpolación en la propiedad de rotación.Método de actualización de llamadas vs tener un setInterval
veo que hay dos maneras de hacer frente a estos problemas:
tener un método de actualización() que llama a los métodos de actualización de todos los demás objetos. Los objetos rastrean el tiempo desde la última actualización y actúan en consecuencia.
Haz un
setInterval
para el método de actualización de cada objeto.
¿Cuál es la mejor solución y por qué?
No estoy calificado para responder, pero la mayoría de los ejemplos que he visto parecen favorecer a la opción 1. De esta forma, todos los objetos se actualizan con el mismo valor de tiempo de juego. Parece que si cada objeto tuviese su propio intervalo, las cosas podrían quedar "fuera de sincronización" si tiene sentido. – sellmeadog
¿Cuál es exactamente la diferencia entre esas formas? En cualquier caso, el motor tiene que rastrear el tiempo. – Bergi
+1 @sellmeadog. Definitivamente vaya con la opción 1. –