Assetleri Yükleme Stratejisi: Streaming vs Preload
Bir oyunda level başladığında tüm modelleri, dokuları ve sesler birden yüklemek oyunu donduruyor. Streaming ve preload iki farklı çözüm sunar; hangisini seçeceğin oyunun yapısına bağlı.
Preload nedir
Preload, oyun başlamadan veya level geçişinde tüm gerekli varlıkları bellekte tutmak demek. Menüden level seçtikten sonra, oyuncu oynamaya başlamadan önce arka planda tüm assetler indirilir. Sonra oyun sorunsuz çalışır; hiç kesinti olmaz. Ama bekleme süresi uzun olabilir.
Streaming nedir
Streaming, oyun sırasında ihtiyaç duyulan assetleri dinamik olarak yüklemek. Oyuncu hareket ederken, yeni bölgelerdeki modeller ve dokular arka planda indirilir. Hızlı başlama sağlar, ama yükleme sırasında görsel kaymalar yaşanabilir.
Ne zaman hangisini kullan
Preload, kapalı alanlar için ideal. Bir oda veya küçük level tümüyle sınırlı; tüm varlıklar önceden bilinir. Mobil oyunlarda da tercih edilir; bellek sınırlı olduğundan kontrollü yükleme daha güvenli.
Streaming, açık dünya oyunlarında zorunlu. Oyuncu her yöne gidebilir; tüm haritayı önceden yüklemek imkansız. Uzaklığa göre varlıkları dinamik olarak yönetirsin.
Pratik örnek: Unity'de streaming
1using UnityEngine;2using UnityEngine.SceneManagement;34public class AssetStreamer: MonoBehaviour5{6private AsyncOperation loadOp;78void Start()9{10// Arka planda level yükle11loadOp = SceneManager.LoadSceneAsync("Level2", LoadSceneMode.Additive);12loadOp.allowSceneActivation = false; // Hemen başlatma13}1415void Update()16{17if (loadOp.progress >= 0.9f) // Yükleme bitti18{19Debug.Log("Level hazır, oyuncu harita görebilir");20loadOp.allowSceneActivation = true; // Şimdi aktifleştir21}22}23}Bu kod level2'yi arka planda yükler, yüzde 90 ilerlemeye ulaşınca oyuncu haritayı görebilir. Preload için ise tüm assetleri Resources.LoadAll() veya Addressable Assets kullanarak önceden bellekte tutarsın.
Hibrit yaklaşım
Çoğu modern oyun ikisini birleştirir. Kritik assetleri (karakter, silah) preload edersin; dekoratif nesneleri streaming ile yüklersin. Böylece başlama hızlı, çalışma pürüzsüz olur.
Seçim, oyunun cinsine, hedef cihaza ve bellek bütçesine bağlıdır. Küçük level? Preload. Sonsuz harita? Streaming. Tereddüt ediyorsan profiler'la ölçüm yapıp karar ver.
0 yorum