SerializeField
Coddy'nin Unity Journey'sinin Unity'de Script Yazmanın Temelleri bölümünün bir parçası. Ders 8 / 67.
public bir alan aynı anda iki iş görür: Inspector'da görünür ve diğer tüm betikler onu okuyup değiştirebilir. Çoğu zaman yalnızca ilkini istersin. private bir alan (C#'ta varsayılan) yalnızca kendi sınıfı tarafından değiştirilebilir; böylece başka hiçbir betik onu bozamaz, ancak Unity onu Inspector'da göstermez.
[SerializeField], Unity'den özel bir alanı yine de kaydetmesini ve göstermesini ister. Bu taretin menzili Inspector'da her taret için ayrı ayrı ayarlanır ve başka hiçbir betik ona dokunamaz:
[SerializeField] private float range = 5f;
void Start()
{
Debug.Log("Range: " + range);
}Unity kodlarının çoğu ayarlarını bu şekilde tutar: [SerializeField] ile birlikte private olarak. Tersine dikkat et: bir alanı private yapıp özniteliği unutursan Unity, sahnede kaydedilmiş değeri sessizce siler. Alan, bunu sana bildirecek hiçbir hata olmadan koddaki sayıya geri döner.
Görev
KolayLambanın height değeri herkese açıktır, bu yüzden herhangi bir betik onu hareket ettirebilir. height değerini Inspector'da görünür kalacak şekilde private yap; Inspector bu değeri 4 olarak ayarlar. Lamba yine de Inspector'da belirtilen yükseklikte asılı kalmalıdır.
Play'e basıp lambanın yüksekliğine bak, ardından Check'e bas.
Kendin dene
using UnityEngine;
public class LampHeight : MonoBehaviour
{
public float height = 1f;
void Start()
{
transform.position = new Vector3(0, height, 0);
}
}
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Unity'de Script Yazmanın Temelleri bölümündeki tüm dersler
1İlk Betiğiniz
Merhaba, UnityKüpü YerleştirHer Karede Hareket EtHer Saniye DönTuşlarla Yön VerÖzet: Küpü Sür4Vektörler
Vektörleri ToplamaYönlerYerel ve Dünya UzayıÇapraz HızNesneler Arasındaki MesafeVector3 Bir YapıdırÖzet: Drone Pilotu7Proje: Yıldızı Yakala
YakalayıcıDüşen Bir Yıldız5Dönüşümler ve Hiyerarşi
Ebeveynler ve ÇocuklarÖlçekNesnelere BakışBir Noktaya Doğru HareketTekrar: Yörüngedeki Ay6GameObject'ler ve Bileşenler
Inspector'daki ReferanslarBir Bileşen AlEksik BileşenlerBir Bileşen EkleRequireComponentGöster ve GizleÖzet: Işık Anahtarı