A ordem do ciclo de vida
Parte da seção Fundamentos de Scripting no Unity do Journey de Unity da Coddy. Lição 73 de 85.
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:
Awake(): uma vez, quando o objeto é carregado ou instanciado.OnEnable(): logo depois, e novamente sempre que o objeto é exibido.Start(): uma vez, antes do primeiro frame do script.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 deUpdate()desse frame.Update(): uma vez por frame.LateUpdate(): uma vez por frame, depois de cadaUpdate().OnDisable(): sempre que o objeto é ocultado, e antes de ser destruído.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.
Todas as lições de Fundamentos de Scripting no Unity
1Fundamentos de C# no Unity
Olá, UnityVariáveisDecimais precisam de um fTexto no ConsoleVariáveis que guardam valoresIf e ElseComparar númerosRevisão: Coletor de Moedas7Laços e Métodos
Repita com forLaços dentro de laçosEscreva um métodoMétodos que respondemArraysRevisão: Escada10Encontrando coisas
Buscar pelo nomeTagsBuscar por tipoReferências são melhores que FindO null do UnityRevisão: moeda mais próxima13Projeto: Desvie dos Blocos
O CorredorBlocos do Céu2Faça-o se mover
Posicione o cuboMova a cada quadroGire a cada segundoDirija com as teclasRecapitulando: dirija o cubo5Vetores
Somando vetoresDireçõesEspaço local e globalVelocidade diagonalDistância entre objetosVector3 é uma structRevisão: piloto de drone8GameObjects e Componentes
Referências no InspectorObter um componenteComponentes ausentesAdicionar um componenteRequireComponentMostrar e ocultarRevisão: Interruptor de luz6Transformações e hierarquia
Pais e filhosIçar a bandeiraEscalaOlhar para as coisasMover-se em direção a um pontoRevisão: Lua em órbita9Projeto: Pegue a Estrela
O PegadorUma Estrela Cadente12O ciclo de vida dos scripts
Awake e StartUpdate e LateUpdateOnEnable e OnDisableA ordem do ciclo de vidaRecapitulação: registrador do ciclo de vidaPratique por conta própria: Playground de Unity