Sync ve queuing
- Oyun Geliştirme kursu
- Uzman
- Ders 29/47
- 4 dk
Animasyon senkronizasyonu ve kuyruğunu öğrenirsin.
Animasyon senkronizasyonu
Senkronizasyon, birden fazla animasyonun aynı anda ve uyumlu şekilde oynatılmasını sağlar. AnimationTree içindeki sync ayarları, klip zamanlamalarını hizalar. Böylece geçişler doğal görünür.
player.play("yurume", 0.3)İkinci parametre geçiş süresini belirler.
Kuyruk ve advance()
queue() metodu, bir sonraki animasyonu sıraya ekler. advance() ise animasyonu ileri sarar ve belirli bir süreyi atlar. Kuyruk, animasyonların sırayla ve kesintisiz oynatılmasını sağlar.
player.queue("ziplama")Kuyruk mekanizması, ardışık hareketler için çok kullanışlıdır.
Uygulama Animasyon kuyruğu oluştur
KuyrukKurulumu adlı betikte _ready içinde $AnimationPlayer düğümünü player değişkenine ata. player.queue("ziplama") ile animasyonu sıraya ekle ve print ile "Kuyrukta bekliyor" metnini yazdır.
Başlangıç kodu
extends Node
func _ready():
var player = $AnimationPlayer
# player uzerinden "ziplama" animasyonunu kuyruga ekle
# "Kuyrukta bekliyor" metnini yazdirÖrnek çözüm
extends Node
func _ready():
var player = $AnimationPlayer
player.queue("ziplama")
print("Kuyrukta bekliyor")Beklenen çıktı
Kuyrukta bekliyor
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 queue() metodu ne yapar?
- Mevcut animasyonu anında durdurur
- Bir sonraki animasyonu sıraya ekler Doğru cevap
- Animasyonları senkronize eder
- Kuyruğu temizler
Açıklama: queue() metodu, bir sonraki animasyonu sıraya ekler; mevcut animasyon bitince otomatik başlar.
2 Kuyruğa ekleme metodunu yaz
player.____("ziplama")
player.queue("ziplama")
Açıklama: AnimationPlayer'da bir sonraki animasyonu sıraya ekleyen metod queue'dur.
3 Sync ve kuyruk terimleri
| Kavram | Anlamı |
|---|---|
queue() |
Bir sonraki animasyonu sıraya ekleme |
advance() |
Animasyonu ileri sarma |
Sync |
Animasyonların zamanlamasını hizalama |
Kuyruk |
Bekleyen animasyonların listesi |