CodeBlanks Logo Icon CodeBlanks

Local ve world farkı

Yerel ve dünya uzayı arasındaki farkı öğrenirsin.

Local ve World uzayı

Unity'de World Space, nesnenin sahnenin genel koordinat sistemine göre konumunu ifade eder. Local Space ise nesnenin kendi ebeveynine göre konumunu ve dönüşünü ifade eder. Bir nesnenin ebeveyni varsa yerel koordinatları bu ebeveynin koordinat sistemine bağlıdır.

World Position: (10, 0, 0)
Local Position: (2, 0, 0)

Bu iki değer aynı nesne için farklı olabilir çünkü farklı koordinat sistemlerini temsil eder.

Ebeveyn ve çocuk nesneler

Unity'de bir Transform başka bir Transform'un çocuğu olabilir. Çocuk nesnenin localPosition değeri ebeveynine göre hesaplanırken position değeri dünya koordinatlarını gösterir. Ebeveyn hareket ettiğinde çocuk nesnenin dünya konumu da etkilenebilir.

Parent
  Position: (5, 0, 0)
  └── Child
      Local Position: (2, 0, 0)
      World Position: (7, 0, 0)

Bu hiyerarşi, nesneleri birbirine bağlı biçimde düzenlemeyi sağlar.

Uygulama Yerel ve dünya konumlarını yazdır

Bir Unity C# sınıfında Start metodu oluştur. Önce nesnenin dünya konumunu, ardından ebeveynine göre yerel konumunu Debug.Log ile yazdır. Bunun için sırasıyla transform.position ve transform.localPosition kullan.

Başlangıç kodu

Player.cs
using UnityEngine;

public class SpaceInfo : MonoBehaviour
{
    void Start()
    {
        // Print world and local positions.
    }
}

Örnek çözüm

Player.cs
using UnityEngine;

public class SpaceInfo : MonoBehaviour
{
    void Start()
    {
        Debug.Log(transform.position);
        Debug.Log(transform.localPosition);
    }
}

Beklenen çıktı

(7.00, 0.00, 0.00)
(2.00, 0.00, 0.00)

Soru ve cevaplar

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

1 Bir nesnenin ebeveynine göre konumunu hangi özellik gösterir?

  • transform.rotation
  • transform.localScale
  • transform.position
  • transform.localPosition Doğru cevap

Açıklama: localPosition, nesnenin dünya koordinatlarına değil, doğrudan ebeveyninin koordinat sistemine göre konumunu belirtir.

2 Yerel konumu oku

Soru
Vector3 relativePoint = transform.____;
Cevap
Vector3 relativePoint = transform.localPosition;

Açıklama: localPosition, nesnenin ebeveynine göre konumunu Vector3 olarak verir.

3 Koordinat sistemleri

Kavram Anlamı
World Space Sahnenin genel koordinat sistemidir
Local Space Ebeveyne göre koordinat sistemidir
position Dünya konumunu verir
localPosition Ebeveyne göre konumu verir

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