Menu
CoddyTech

Ebeveynler ve Çocuklar

Coddy'nin Unity Journey'sinin Unity'de Script Yazmanın Temelleri bölümünün bir parçası. Ders 31 / 85.

Hierarchy içinde, başka bir nesnenin üzerine sürüklenen nesne onun çocuğu olur ve ebeveyninin altında girintili olarak gösterilir. Çocuk, ebeveyniyle birlikte hareket eder, döner ve ölçeklenir: ebeveyni hareket ettir, tüm çocuklar da onunla birlikte hareket eder; çocuklara kod eklemek gerekmez.

Unity, çocuğun konumunu ebeveynine göre saklar. transform.localPosition, ebeveynden ölçülen bu uzaklıktır; transform.position ise dünyadaki konumdur. Bu Rider, bir Horse nesnesinin çocuğudur ve betiği, at nerede durursa dursun onu atın merkezinin 1 birim yukarısına ve yarım birim gerisine yerleştirir:

void Start()
{
    transform.localPosition = new Vector3(0, 1, -0.5f);
}

At (4, 0.5, 2) konumundayken, binicinin position değeri (4, 1.5, 1.5) olurken localPosition değeri (0, 1, -0.5) olarak kalır. At ilerlediğinde position değişir, localPosition ise değişmez. Uzaklık, ebeveynin kendi eksenleri boyunca ölçülür; bu nedenle ebeveyn döndüğünde veya ölçeklendiğinde uzaklık da onunla birlikte döner ve ölçeklenir. Ebeveyni olmayan bir nesnede localPosition ve position aynıdır.

challenge icon

Görev

Orta

Bayrağı, gemisine göre ölçülen direğin dibine yerleştir.

  1. Start() içinde sayılar (0.6, 1, 0), bayrağın üst nesnesi olan Ship'e göre ölçülür.
  2. Bu satırda transform.position ifadesini transform.localPosition olarak değiştir.

“Oyna” düğmesine bas: bayrak direğin dibinde, geminin üzerinde durur. Ardından “Kontrol et” düğmesine bas.

Kendin dene

using UnityEngine;

public class Hoist : MonoBehaviour
{
    public float climb = 1f;

    void Start()
    {
        // Direğin tabanı: Ship'e göre 0.6 sağda ve 1 yukarıda
        transform.position = new Vector3(0.6f, 1, 0);
    }

    void Update()
    {
        // Yukarı ok tuşu basılı tutulurken Ship'e göre yükseklik 4 olana kadar tırman
    }
}

Unity'de Script Yazmanın Temelleri bölümündeki tüm dersler

Kendi başına pratik yap: Unity playground