CodeBlanks Logo Icon CodeBlanks

Awake ve Start farkı

Awake ve Start arasındaki farkı ve sıralamayı öğrenirsin.

Awake nedir?

Awake metodu, nesne sahneye yüklendiği anda çağrılır. Start'tan önce çalışır ve oyun hazırlıklarının ilk adımıdır.

void Awake()
{
    Debug.Log("Awake");
}

Bir nesnedeki sıralama şöyledir: önce Awake, sonra Start, ardından Update.

Awake ve Start arasındaki sıra

Awake ve Start ikisi de yalnızca bir kez çalışır, ama sıraları sabittir: önce Awake, sonra Start. Bu yüzden Start içinde Awake'in hazırladığı değerleri güvenle kullanabilirsin.

void Awake()
{
    ad = "Oyuncu";
}

void Start()
{
    Debug.Log(ad);
}

Yukarıda Start çalıştığında ad değişkeni çoktan hazır olur.

Uygulama Sırayı göster

Sira adında bir sınıf yaz. Awake içinde Debug.Log ile "Awake", Start içinde "Start" metnini yazdır. Böylece çağrı sırası konsola yansır.

Başlangıç kodu

Player.cs
using UnityEngine;

public class Sira : MonoBehaviour
{
    // Awake icinde "Awake", Start icinde "Start" yazdir
}

Örnek çözüm

Player.cs
using UnityEngine;

public class Sira : MonoBehaviour
{
    void Awake()
    {
        Debug.Log("Awake");
    }

    void Start()
    {
        Debug.Log("Start");
    }
}

Beklenen çıktı

Awake
Start

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Aşağıdaki iki metot çalıştığında konsolda hangi sırayla çıktı görünür?

Player.cs
void Awake()
{
    Debug.Log("A");
}

void Start()
{
    Debug.Log("B");
}
  • Önce B, sonra A
  • A ve B aynı anda görünür
  • Önce A, sonra B Doğru cevap
  • Yalnızca A görünür

Açıklama: Awake, Start'ten önce çağrılır; bu yüzden konsola önce A, sonra B yazılır.

2 Önce çalışan metodu tanımla

Soru
    void ____()
    {
        Debug.Log("Awake");
    }

    void Start()
    {
        Debug.Log("Start");
    }
Cevap
    void Awake()
    {
        Debug.Log("Awake");
    }

    void Start()
    {
        Debug.Log("Start");
    }

Açıklama: Awake, Start'ten önce çağrılır; bu yüzden ekrana önce 'Awake' yazılır.

3 Awake ve Start sırası

Kavram Anlamı
Awake() Önce çalışan başlangıç metodu
Start() Awake'den sonra gelen metot
Nesne yüklendiğinde Awake'ı tetikleyen an
İlk güncelleme Start'tan sonra gelir

Başlangıç bölümündeki tüm dersler