Menu
CoddyTech

El orden del ciclo de vida

Parte de la sección Fundamentos de scripting en Unity del Journey de Unity de Coddy. Lección 58 de 67.

Unity llama a los métodos de un script en un orden fijo, desde el momento en que aparece su objeto hasta el momento en que se destruye:

  1. Awake(): una vez, cuando se carga o se crea el objeto.
  2. OnEnable(): justo después, y de nuevo cada vez que se muestra el objeto.
  3. Start(): una vez, antes del primer fotograma del script.
  4. FixedUpdate(): según el reloj de física, 50 veces por segundo de forma predeterminada, así que puede ejecutarse cero, una o varias veces en un fotograma, siempre antes de Update() de ese fotograma.
  5. Update(): una vez por fotograma.
  6. LateUpdate(): una vez por fotograma, después de cada Update().
  7. OnDisable(): cada vez que se oculta el objeto, y antes de que se destruya.
  8. OnDestroy(): una vez, cuando se destruye el objeto.

Los pasos del 4 al 6 se repiten en cada fotograma mientras el objeto esté activo. Un objeto creado pasa por la misma lista: Instantiate ejecuta Awake() y OnEnable() de la copia antes de retornar, y el Start() de la copia se ejecuta antes de su primer Update().

De este orden se desprenden dos hábitos. El código de Awake() configura los campos propios de un objeto a tiempo para el Start() de todos los demás objetos. Y el código de física va en FixedUpdate(), cuyos pasos siempre están separados por 0.02 segundos, independientemente de lo rápidos o lentos que sean los fotogramas.

Pruébalo tú mismo

Esta lección no incluye un desafío de código.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos de scripting en Unity