Menu
CoddyTech

A ordem do ciclo de vida

Parte da seção Noções básicas de scripting no Unity do Journey de Unity da Coddy. Lição 58 de 67.

O Unity chama os métodos de um script em uma ordem fixa, desde o momento em que seu objeto aparece até o momento em que é destruído:

  1. Awake(): uma vez, quando o objeto é carregado ou instanciado.
  2. OnEnable(): logo depois, e novamente sempre que o objeto é exibido.
  3. Start(): uma vez, antes do primeiro frame do script.
  4. FixedUpdate(): no relógio da física, 50 vezes por segundo por padrão; portanto, zero, uma ou várias vezes em um frame, sempre antes de Update() desse frame.
  5. Update(): uma vez por frame.
  6. LateUpdate(): uma vez por frame, depois de cada Update().
  7. OnDisable(): sempre que o objeto é ocultado, e antes de ser destruído.
  8. OnDestroy(): uma vez, quando o objeto é destruído.

As etapas de 4 a 6 se repetem em cada frame enquanto o objeto estiver ativo. Um objeto instanciado passa pela mesma lista: Instantiate executa Awake() e OnEnable() da cópia antes de retornar, e o Start() da cópia ocorre antes de seu primeiro Update().

Da ordem decorrem dois hábitos. O código em Awake() inicializa os próprios campos de um objeto a tempo para o Start() de todos os outros objetos. E o código de física fica em FixedUpdate(), cujas etapas estão sempre separadas por 0.02 segundos, por mais rápidos ou lentos que sejam os frames.

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Noções básicas de scripting no Unity