L'ordine del ciclo di vita
Fa parte della sezione Fondamenti di scripting in Unity del percorso Unity di Coddy. Lezione 73 di 85.
Unity chiama i metodi di uno script in un ordine fisso, dal momento in cui il suo oggetto appare a quello in cui viene distrutto:
Awake(): una volta, quando l'oggetto viene caricato o generato.OnEnable(): subito dopo, e di nuovo ogni volta che l'oggetto viene mostrato.Start(): una volta, prima del primo frame dello script.FixedUpdate(): con il ritmo della fisica, 50 volte al secondo per impostazione predefinita, quindi zero, una o più volte per frame, sempre prima diUpdate()di quel frame.Update(): una volta per frame.LateUpdate(): una volta per frame, dopo ogniUpdate().OnDisable(): ogni volta che l'oggetto viene nascosto, e prima che venga distrutto.OnDestroy(): una volta, quando l'oggetto viene distrutto.
I passaggi da 4 a 6 si ripetono a ogni frame finché l'oggetto è attivo. Un oggetto generato segue lo stesso elenco: Instantiate esegue Awake() e OnEnable() della copia prima di restituire il controllo, mentre Start() della copia viene chiamato prima del suo primo Update().
Da quest'ordine derivano due abitudini. Il codice in Awake() configura i campi dell'oggetto stesso in tempo per lo Start() di ogni altro oggetto. E il codice della fisica va in FixedUpdate(), i cui passaggi sono sempre distanziati di 0.02 secondi, indipendentemente dalla velocità con cui arrivano i frame.
Provalo tu
Questa lezione non include una sfida di codice.
Tutte le lezioni di Fondamenti di scripting in Unity
1Nozioni di base di C# in Unity
Ciao, UnityVariabiliI numeri decimali richiedono una fTesto nella ConsoleVariabili che ricordanoIf ed ElseConfrontare i numeriRipasso: il collezionista di monete7Cicli e metodi
Ripeti con forCicli annidatiScrivere un metodoMetodi che restituiscono valoriArrayRiepilogo: scala10Trovare gli oggetti
Trovare per nomeTagTrovare per tipoI riferimenti battono la ricercaIl null di UnityRipasso: la moneta più vicina13Progetto: Schiva i blocchi
Il corridoreBlocchi dal cielo2Fallo muovere
Posiziona il cuboMuovilo a ogni frameRuotalo ogni secondoGuidalo con i tastiRiepilogo: guida il cubo5Vettori
Somma di vettoriDirezioniSpazio locale e spazio mondoVelocità diagonaleDistanza tra gli oggettiVector3 è una structRiepilogo: pilota di droni8GameObject e componenti
Riferimenti nell'InspectorOttenere un componenteComponenti mancantiAggiungere un componenteRequireComponentMostrare e nascondereRiepilogo: interruttore della luce3L’Inspector
Campi dell’InspectorSerializeFieldNumeri decimali e MathfAttributi dell’InspectorRiepilogo: ascensore6Trasformazioni e gerarchia
Genitori e figliIssare la bandieraScalaOsservare gli oggettiMuoversi verso un puntoRiepilogo: Luna in orbita9Progetto: Acchiappa la stella
Il raccoglitoreUna stella cadente12Il ciclo di vita dello script
Awake e StartUpdate e LateUpdateOnEnable e OnDisableL'ordine del ciclo di vitaRiepilogo: Lifecycle LoggerEsercitati da solo: Playground Unity