- Katılım
- 11 Mar 2026
- Mesajlar
- 52
- Tepkime puanı
- 5
- Puan
- 8
Unreal Engine’de Oyun Optimizasyonu Nasıl Yapılır?
Unreal Engine güçlü bir motor ama bu güç, beraberinde performans sorunlarını da getirebilir. Düşük FPS, bellek sızıntıları, uzun yükleme süreleri… Bunların hepsinin çözümü doğru optimizasyon tekniklerini bilmekten geçiyor.
1. Profiling ile BaşlaOptimizasyonun ilk adımı neyin yavaş olduğunu tespit etmek. Unreal Engine’in yerleşik araçlarından başla:
- Unreal Insights – CPU/GPU kullanımını gerçek zamanlı izler
- stat fps / stat unit – Oyun içi temel performans metriklerini gösterir
- GPU Visualizer (Ctrl+Shift+,) – GPU darboğazlarını tespit eder
Profiling yapmadan optimizasyon yapmak tahmin yürütmekten ibarettir.
2. Draw Call ve Polygon YönetimiRender performansının düşmesinin en yaygın sebebi aşırı draw call sayısıdır. Bunu azaltmak için:
- LOD (Level of Detail) sistemini aktif et – uzaktaki mesh’ler otomatik sadeleşsin
- Instanced Static Mesh kullan – aynı objenin binlerce kopyası tek draw call’a insin
- Nanite (UE5) – yüksek poligonlu mesh’ler için devrimsel bir çözüm, uyumlu içeriklerde mutlaka kullan
Dinamik ışıklar GPU’yu ciddi biçimde zorlar. Mümkün olan yerlerde statik veya sabit (stationary) ışık kullan ve Lightmass ile ışık haritalarını pişir.
- Gereksiz Dynamic Shadow’ları kapat
- Shadow Distance değerini sahne ihtiyacına göre sınırla
- Lumen kullanıyorsan Lumen kalite ayarlarını hedef platforma göre düşür
Blueprint’ler hızlı prototipleme için harika ama Tick event içinde ağır hesaplama yapmak kötü bir alışkanlıktır. Şu kurallara dikkat et:
- Tick’i sadece gerçekten gerekli olan Actor’larda açık bırak
- Döngüsel kontroller yerine Event Dispatcher ve Timer kullan
- Sık tekrar eden ağır Blueprint bloklarını C++’a taşımayı değerlendir
- Texture boyutlarını power-of-two (512, 1024, 2048) olarak tut
- Texture Streaming’i aktif et, tüm textures’ı aynı anda belleğe yükleme
- Materyal shader karmaşıklığını Shader Complexity View Mode ile kontrol et
Optimizasyon bir son adım değil, geliştirme sürecine yayılmış sürekli bir alışkanlıktır.