Menu
CoddyTech

Kolejność cyklu życia

Część sekcji Podstawy skryptów w Unity ścieżki Unity w Coddy. Lekcja 58 z 67.

Unity wywołuje metody skryptu w ustalonej kolejności — od chwili pojawienia się obiektu do chwili jego zniszczenia:

  1. Awake(): raz, gdy obiekt zostaje załadowany lub utworzony.
  2. OnEnable(): zaraz potem, a następnie za każdym razem, gdy obiekt zostaje pokazany.
  3. Start(): raz, przed pierwszą klatką skryptu.
  4. FixedUpdate(): według zegara fizyki, domyślnie 50 razy na sekundę, czyli zero, jeden lub kilka razy w ciągu klatki, zawsze przed Update() tej klatki.
  5. Update(): raz na klatkę.
  6. LateUpdate(): raz na klatkę, po każdym Update().
  7. OnDisable(): za każdym razem, gdy obiekt zostaje ukryty, oraz przed jego zniszczeniem.
  8. OnDestroy(): raz, gdy obiekt zostaje zniszczony.

Kroki od 4 do 6 powtarzają się w każdej klatce, dopóki obiekt jest aktywny. Utworzony obiekt przechodzi przez tę samą listę: Instantiate wywołuje Awake() i OnEnable() kopii, zanim zwróci wynik, a Start() kopii zostaje wywołane przed jej pierwszym Update().

Z tej kolejności wynikają dwie dobre praktyki. Kod w Awake() konfiguruje własne pola obiektu na czas przed wywołaniem Start() każdego innego obiektu. Kod związany z fizyką umieszczaj w FixedUpdate(), którego kroki są zawsze oddalone od siebie o 0.02 sekundy, niezależnie od tego, jak szybko lub wolno następują kolejne klatki.

Spróbuj swoich sił

Ta lekcja nie zawiera wyzwania z kodem.

quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy skryptów w Unity