Sahne örneği
- Oyun Geliştirme kursu
- Başlangıç
- Ders 75/83
- 4 dk
Kaydedilmiş bir sahneyi örnekleme ve alt düğüm olarak kullanmayı öğrenirsin.
instantiate() ile Örnekleme
Kaydedilmiş bir PackedScene kaynağından yeni bir kopya oluşturma işlemine sahne örnekleme (instancing) denir. GDScript'te bu işlem instantiate() metodu ile yapılır. Örneğin bir mermi veya düşman kaynağından sahnede onlarca kopya bu yöntemle üretilir.
var sahne: PackedScene = preload("res://Dusman.tscn")
var yeni_dusman = sahne.instantiate()add_child() ile Ağaca Ekleme
instantiate() ile oluşturulan nesne henüz yalnızca bellekte yaşar; ekranda görünmesi için sahne ağacına dahil edilmelidir. Bir düğümü başka bir düğümün altına yerleştirmek için add_child(yeni_dugum) fonksiyonu kullanılır.
var yeni_obje = sahne.instantiate()
add_child(yeni_obje)
print("Düğüm ağaca eklendi")Uygulama Düğüm Oluştur ve Ekle
_ready() içinde Node2D.new() ile yeni bir düğüm oluştur, add_child() ile ekle ve ekrana print("Örnek eklendi") yazdır.
Başlangıç kodu
extends Node
func _ready():
# Yeni Node2D oluştur, add_child ile ekle ve mesaj yazdır
passÖrnek çözüm
extends Node
func _ready():
var nesne = Node2D.new()
add_child(nesne)
print("Örnek eklendi")Beklenen çıktı
Örnek eklendi
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir PackedScene kaynağından yeni bir düğüm kopyası oluşturmak için hangi metot çağrılır?
- instantiate() Doğru cevap
- duplicate_tree()
- create_scene()
- spawn_node()
Açıklama: PackedScene nesnelerinden yeni bir düğüm hiyerarşisi üretmek için instantiate() metodu kullanılır.
2 Yeni düğümü alt düğüm olarak ekle
var yeni_obje = sahne.instantiate()
____(yeni_obje)
var yeni_obje = sahne.instantiate()
add_child(yeni_obje)
Açıklama: Sahne ağacına alt düğüm bağlamak için add_child() kullanılır.
3 Örnekleme Terimleri
| Kavram | Anlamı |
|---|---|
instantiate() |
PackedScene'den yeni düğüm üretir |
add_child() |
Düğümü ağaca alt düğüm olarak bağlar |
preload() |
Sahne veya kaynağı önceden yükler |
get_parent() |
Üst ebeveyn düğümü döndürür |