Unity: FixedUpdate, Update y LateUpdate

En este blog explicaré las diferencias entre FixedUpdate, Update y LateUpdate. Cada uno tiene una forma correcta de utilizarlo. Y espero que leyendo este blog entiendas un poco más sobre este tema.

1.FixedUpdate

FixedUpdate tiene la frecuencia de la física del sistema, por lo que es en este método que se realizan los cálculos de física. Se recomienda usar este cuando se trata de Rigidbodys, algunos triggers y colisiones.

Es independiente de la frecuencia de fotogramas (frame rate), esto es útil porque en el caso de Update encontrarás que pueden haber algún alargamiento o acortamiento en la frecuencia de fotogramas dependiendo de la cantidad de acciones que se deban ejecutar en un momento determinado.

Por defecto FixedUpdate se llama cada 0,02 segundos.

En la imagen de arriba encontrará la forma de modificar el tiempo predeterminado de FixedUpdate (la recomendación es no cambiarlo)

2. Update

El metodo Update es llamado por cada fotograma porlo que depende del tiempo entre los fotogramas (frame rate), y a su vez eso depende de la cantidad de las acciones que tengan que ejecutarse en un tiempo dado. Teniendo esto en cuenta, podríamos encontrar que en un segundo tienes 57 cuadros y en otros 59 cuadros.

Para resolver este problema del tiempo entre fotogramas (frame rate), se puede usar el Time.DeltaTime con el objetivo de obtener una frecuencia de cuadros por segundo confiable y estable.

En la explicación anterior, la incoherencia entre la duración de los fotogramas puede provocar que si llamas a un cálculo físico aquí, podrías tener resultados inesperados.

Hay muchas cosas que se pueden llamar en Update como los Input y temporizadores simples.

3. LateUpdate

Cómo nos dice su nombre, es el último en ser llamado de los tres, la utilidad de este método es por ejemplo cuando queremos que algo se llame después de los otros dos, el ejemplo más fácil es una cámara.

Imagine que tienes un objeto seguido por la cámara, necesitas que la cámara se mueva después de que se hayan realizado todos los cálculos de física y otros, es para esto que usas el LateUpdate.

Si te ha resultado útil este blog déjanos un comentario y síguenos en nuestro Instagram @tortugamedev and Twitter @Totuas2.

Y no olvides revisar nuestro otros blogs acerca de Unity!!

Bibliografía y otras lecturas

https://docs.unity3d.com/ScriptReference/MonoBehaviour.FixedUpdate.html

https://docs.unity3d.com/ScriptReference/MonoBehaviour.Update.html

https://docs.unity3d.com/ScriptReference/MonoBehaviour.LateUpdate.html

Leave a Comment

Your email address will not be published.