Unreal Engine 5.7 Projelerinde PC Optimizasyonu: Donanım Hedefleri, Varlık Yönetimi ve Profesyonel Profil Çıkarma Stratejileri
Unreal Engine 5.7 projelerinde PC optimizasyonu için profesyonel iş akışları ve indie geliştiricilere yönelik pratik stratejiler sunar. Hedef donanım aralıkları (düşük/orta/yüksek/ultra), performans bütçeleri (FPS, kare süresi, CPU/GPU payları), varlık optimizasyonu (mesh, LOD, doku, Nanite, sanal doku vb.), render ayarları (Lumen, ışın izleme, gölgeler, refleksiyonlar, post-process), kalite ve ölçeklenebilirlik ayarları, profil çıkarma araçları (Unreal Insights, GPU Profiler, RenderDoc, PIX, vb.) ve iş akışları, paketleme/yapı boru hatları (paketleme, cook, shader derleme, seviye yükleme), otomatik ve manuel test stratejileri, CI/CD ile performans regresyon testleri, donanım/sürücü özel optimizasyonları, bellek ve akış yönetimi ile çok oyuncu/ağ konuları ele alınmıştır. Her adım için somut iş akışları, önerilen ayarlar/aralıklar, avantaj-dezavantajlar, yaygın hatalar ve zaman/iş gücü tahminleri verilmiştir. Ek olarak, kalite ön ayarları ile ayarlar, profil araçları ile kullanım senaryoları, varlık optimizasyon teknikleri ile beklenen kazançlar karşılaştırma tablolarıyla sunulmuştur. Örnek komut satırları, Unreal konsol komutları ve basit CI test vakaları eklenmiştir.
Donanım Hedefleri ve Performans Bütçeleri

PC platformu çok çeşitli donanım içerdiğinden hedef sistemleri kategorize etmek önemlidir. Örneğin “düşük” seviye olarak entegre veya eski GPU’lu sistemler; “orta” seviye olarak güncel orta sınıf GPU’lar (ör. GTX 1660) ve CPU’lar; “yüksek” seviye olarak modern üst sınıf GPU’lar (ör. RTX 3070) ve “ultra” olarak en üst donanımlar (RTX 4080 gibi) kabul edilebilir. 1080p, orta ayarlarda 30 FPS gibi minimum performans; 1440p, yüksek ayarlarda 60 FPS önerilen hedeftir. 60 FPS için kare bütçesi ~16.66 ms, 30 FPS için ~33 ms’dir. Performans hedefleri belirlenirken çözünürlük, grafik ayarları, minimum/ rekomendasyan sistem (CPU, GPU, RAM, VRAM) dikkate alınmalı ve profil işlemleri tutarlı bir donanım ve sürücü ortamında yapılmalıdır.
Kare Bütçeleri: 60 FPS ≈ 16.7 ms; 30 FPS ≈ 33.3 ms (örneğin mobil veya düşük seviye için). 144 FPS ≈ 6.9 ms gibi yüksek oranlar da VR/yüksek yenileme monitörleri için kullanılabilir. Kare bütçesinin paylaştırılması genellikle CPU ve GPU’ya eşit ya da hedef cihaz yüküne göre ayarlanır. Örneğin CPU’yu %10–20, GPU’yu %80–90 civarı kullanan bir sistem GPU-bağlı olabilir. >95% GPU kullanımı GPU-bağlılığı; düşük GPU kullanımı ve yüksek GameThread zamanı ise CPU-bağlılığı gösterir.
Donanım Profili: Intel Arc gibi yeni iGPU’lar da hesaba katılmalı; Steam donanım istatistikleri ve GPU profil skorları başlangıç için kullanılabilir. Profil için her zaman en güncel GPU sürücüleri kullanılmalı, arka planda gereksiz uygulamalar kapatılmalı ve gerektiğinde GPU hız aşırtma ayarları sıfırlanmalıdır. Windows’ta donanım hızlandırmalı GPU zamanlamayı kapatmak, doğru GPU/CPU kullanım bilgisinin alınması için önerilir.
Varlık (Asset) Optimizasyonu
Mesh ve LOD Yönetimi: Karmaşık modelleri LOD (Level of Detail) seviyelerine ayırın. Her statik mesh için 3–5 LOD oluşturmak, uzaktaki detay yükünü hafifletir. Düşük detaylı LOD’lar üçgen sayısını %50–90 oranında azaltabilir. Örneğin bir ağacın LOD0’dan LOD3’e geçişi, gölgeleme ve çizim maliyetini büyük ölçüde düşürür. Nanite kullanımı yalnızca yüksek çokgenli, opak objelerde önerilir. Nanite, hacimli gövdeli ağaç veya kayan oluşumlar gibi objelerde polygon akışını otomatik yönetir ve elle LOD ihtiyacını ortadan kaldırır; böylece çok daha fazla bitki yerleşimiyle (ör. 250K ağaçta Nanite ile 58 FPS vs geleneksel 1 2 3 21 • 45 • 6 7 8 1
41 FPS) hedef FPS korunabilir. Ancak Nanite her zaman avantajlı değildir: tek yüzeyli çimen kartları gibi çok basit geometri geleneksel yöntemden hızlı render edilir. Nanite’ın ekstra VRAM maliyeti olabilir; bu yüzden stat RHI ile bellek kullanımını takip edin. Karmaşık malzemeleri mümkünse basitleştirin veya paylaştırın (ör. çoklu materyal yerine tek bir doku atlası). HLODs (High-Level LOD) oluşturmak, uzak binaları birleştirip üçgene dönüştürerek draw call sayısını azaltır. Yüksek çokgeni tek poligonla temsil eden gölge proxylari de (merge actors / Geometry Script ile) gölge maliyetini azaltır .

Doku ve Sanal Doku (VT): Doku boyutlarını hedef VRAM’e göre belirleyin: düşük donanımlar için maksimum 1K–2K, yüksek donanımlar için 4K+. Mipmap kullanarak fazlalık bellek ve bant genişliği tüketimini engelleyin. Sanal Dokular (Virtual Textures) çok büyük dünya dokuları için VRAM tasarrufu sağlar fakat shader karmaşıklığını artırır ve fazladan hesap maliyeti doğurabilir. Örneğin büyük açık dünya projesinde ayrı renk ve normal dokular için 8K kullanımı, performans yerine bellek yükünü artırır. Genel kural olarak, sanal dokular karmaşık ayrıntılar ve bellek kısıtı olan projelerde tercih edilir; basit sahnelerde normale dönmek daha iyidir. Doku sıkıştırma (Örn. Oodle Texture) paket boyutunu %50 ve üzeri küçültür, yükleme sürelerini hızlandırır.
Malzeme Optimizasyonu: Mümkün olduğunca basit malzemeler kullanın. Bir sahnede kullanılan benzersiz malzeme sayısını sınırlayın; malzemeleri atlaslayarak draw call azaltımı sağlayın. Çok katmanlı (layered) malzemeler, parazit süzgeci (masklar) ve dinamik deformasyon içeren malzemeler (WPO, vertex displacement) GPU maliyetini artırır; bunları sadece gerektiğinde ve uzak görüntüde olmayan objelerde tercih edin. Aynı şekilde, parazitli (maskeli) dokular da transparan pixel sayısını artırarak verim düşürür. Görünüş optimizasyonu (culling) için objelere uygun kapanma mesafeleri (cull
distance) belirleyin; örneğin ufak çalıları 300–500m’den ötesinde kapatmak anlamlıdır.
Render Ayarları ve Işıklandırma
Lumen ve Işın İzleme: Lumen dinamik GI yüksek kaliteli aydınlatma sağlar ancak ağırdır. Düşük sistemi hedefliyorsanız Lumen Detay seviyesini azaltın veya kapatın. r.LumenSceneDetail va r.LumenReflections.Quality gibi CVarlara bakın. Donuk ışın izleme (Static Ray Tracing) yerine Lumen kullanarak CPU maliyetinden kurtulun. Gölgeleme için Virtual Shadow Maps (VSM) kullanılıyorsa, düşük uçta gölge LOD’unu düşürün: r.Shadow.NaniteLODBias ile Nanite gölgede daha düşük detay (LOD) kullanımı ayarlanabilir. Çok katmanlı ışın yansımaları gerekiyorsa madde belleğinin sınırlı olduğu sistemlerde ekran uzayı yansımalarına (SSR) geçiş yapın.

Gölgeler ve Refleksiyonlar: Dinamik gölgeler genellikle en maliyetli işlemlerden biridir. Düşük kalite için directional (CSM) gölgelerini düşük doku çözünürlüğünde ayarlayın (r.ShadowQuality, r.CascadeDistributionExponent). Mobil veya entegre GPU’larda gölgeyi rölanti tutmak için tamamen kapatma veya r.Shadow.DistanceScale azaltma gibi taktikler kullanın. Refleksiyon yakalama sayısını en aza indirin; fazla cube map GPU yükünü artırır. Eski/orta seviye için planimetri (su yüzeyi vb. için) veya screen-space refleksiyon (r.SSR.Quality) tercih edin.
Post-Process ve Görsel Efektler: Post-process efektleri (doğal bulanıklık, ışık parlaması, tone mapping, vs.) performansı etkiler. Gereksizse derinlik bulanıklığı ve hareket bulanıklığını kapatın (r.DepthOfFieldQuality=0, r.MotionBlurQuality=0). Bloom, lens flares, volumetrik sis gibi efektleri düşük seviye yapın veya kapatın. Ekran ölçeklendirmesini (r.ScreenPercentage) hedef ayarlara göre %70–150 arasında ince ayarlayın; daha düşük yüzde, kalite kaybıyla birlikte GPU yükünü önemli ölçüde azaltır. Örneğin Ultra ayarda %100 ekran ölçeği kullanılabilirken, düşük sistemde %70–80 yeterli olabilir. Gerçek zamanlı aydınlatma hesaplaması gerekiyorsa düşük çözünürlükte ışın izlemeli 89 10 11 12 13 14 15 16 11 2
efektler (Işın Gölgesi, Refleksiyon) test edin; performans düşürüyorsa normal gölgeler ve SSR geri dönülmeli.
Ölçeklenebilirlik ve Kalite Ayarları
Unreal Engine 5, donanıma göre kalite ayarlarını kolayca ölçeklendirmek için Engine Scalability önayarlarını sunar. Standart kalite seviyeleri Low, Medium, High, Epic, Cinematic şeklindedir. Bu önayarlar pek çok CVar’ı tek seferde değiştirir (AA, gölge, doku çözünürlüğü, post-process detayı, efekt seviyesi, vs.). Örneğin Low seviyede gölge kalitesi ve doku ayrıntısı en alt düzeye alınırken, Epic seviyede en yüksek kalite ve en detaylı ayarlar etkinleşir. Hedef donanım aralığına göre kapsamlı skor testleri (synthbenchmark) ile başlangıçta uygun bir ölçek önayarını seçmek önemlidir. Gerekirse her kalite seviyesine özel Device Profile veya DefaultScalability.ini ile CVarlarda ince ayar yapılabilir. Geliştirici süreçte ~ ile ayarlar paneli üzerinden veya r.DefaultFeature.* ve r.Scalability.* konsol komutlarıyla (ör. r.ViewDistanceQuality 2) dinamik değişiklik yapılabilir. Örnek kalite önayarları ve karşılıkları:
Kalite SeviyesiEkran Ölçeği (%)Görüş Uzaklığı KalitesiGölge KalitesiDoku KalitesiEfekt KalitesiLow70DüşükDüşük (0)Düşük (0)Düşük (0)Medium85OrtaOrta (1)Orta (1)Orta (1)High100YüksekYüksek (2)Yüksek (2)Yüksek (2)Epic120En YüksekEpic (3)Epic (3)Epic (3)Cinematic150Ultra (varsa)Ultra (4)Ultra (4)Ultra (4)
Bu önayarlar oyun başlangıcında veya ayarlar menüsünde ScalabilityQuality komutuyla (r.ScalabilityQuality 3 örn. High) uygulanabilir. Ayrıca Significance Manager ile sahne içindeki farklı objelere uzaklığa göre önem sırası atayarak daha akıllı seviyelendirme yapılabilir.
Profil Oluşturma Araçları ve İş Akışları
Optimizasyonun temel adımı profillemedir. UE5.7′de kullanılacak başlıca araç ve komutlar şunlardır:
Unreal Insights: Çoklu kare boyunca CPU/GPU/iş parçacığı aktivitelerini detaylı kaydeder. Editor’de UnrealInsights.exe çalıştırıp oyunu başlatın veya oyun içinde Trace.Send 127.0.0.1 komutunu kullanarak bağlantıyı tetikleyin. Trace.Pause ve Trace.Resume ile kayıt başlatılıp durdurulur. Insights, yüzlerce metriği grafiksel olarak sunar ve darboğazları netleştirir.
Stat Komutları: Oyun içinde gerçek zamanlı veri izlemek için hızlıdır. Örneğin stat fps, stat unit, stat unitgraph FPS ve ana iş parçacıkları zamanlarını gösterir. stat gpu GPU yükünü (frame süresi, draw call, üçgen sayısı) özetler. stat scenerendering ışın geçirme ayrıntısı, stat nanite Nanite üçgen/örnek istatistikleri verir. stat RHI bellek sayacı gösterir. Bu komutlarla ilk analizler yapılır; örneğin DrawTime, FrameTime’a yakınsa GPU-bağlı, GameTime’a yakınsa CPU-bağlı olduğu anlaşılabilir.
ProfileGPU:r.ProfileGPU=1 ile her kare sonu GPU zaman çizelgesi Log’a yazılır. Bu, basit GPU darboğazlarını bulmak için yararlıdır. 1717 18 19 • 20 21 • 2223 23 23 24 • 3
RenderDoc: Tek kare GPU (DirectX12/Vulkan) yakalayıp shader aşamalarını inceler. Derin grafik boru hattı analizleri için kullanılır.
PIX (Windows): Microsoft’un DX12 GPU analiz aracı. Satır içi grafik zamanlaması, nöbetçiler, vs. için tercih edilir. -AttachPix parametresiyle oyuna bağlanır (UE5.5+).
PresentMon: GPU/CPU kullanım oranlarını zaman serisi olarak raporlar. Canlı grafiklerde darboğaz tipini görmek için idealdir.
GPUView: Windows Performance Toolkit ile GPU/CPU alt sistemlerini detaylı analiz eder. Özellikle D3D iş kuyruğu, çakışmalar ve GPU çizimi ayrıntısı için kullanılır (profil yaparken ekran kartı zamanlaması kapatılmalıdır).
VTune / uProf: Intel VTune veya AMD uProf gibi derin CPU profiller, oyun içindeki kod kısımları, bellek şemaları ve dallanma tahmin verimliliğini incelemek için kullanılır.
Karşılaştırmalı tablo örneği:
AraçKullanım Alanı / AmaçUnreal InsightsÇok çerçeveli CPU/GPU işleyiş analizi (program akışı)Stat KomutlarıGerçek zamanlı oyun-içi metrikler (FPS, thread süreleri)ProfileGPUKare bazlı GPU zamanlaması (Draw event detayları)RenderDocTek kare GPU yakalama ve detaylı drawcall analiziPIX (Windows)GPU zamanlama/dx API analizi, performans köprüleriPresentMonGerçek zamanlı GPU/CPU kullanım grafikleriGPUViewDüşük seviye GPU/CPU boru hattı ve etkileşim analiziVTune / uProfCPU hotspot, bellek bant genişliği vb. detaylı analiz
Profil İş Akışı: Genellikle önce stat komutları ile hızlı kontrol yapılır. Sorun belirlenirse Unreal Insights ile kapsamlı kayıta geçilir. CPU iş yükü yoğun ise VTune gibi araçlarla kod adımları incelenir; GPU darboğazı varsa bir kare RenderDoc/PIX/RGP ile yakalanır. Örneğin, oyunu test (Test) yapılandırmasında başlatıp, bir kamera turu (bakınız aşağı) üzerinden Trace.Pause/Resume ile çıkış verilerini toplayabilirsiniz. Belirlenen dar boğazlarda ayar değiştirilip yeniden profilleme yapılır. Profil işlemi için her zaman Test ya da Shipping yapılandırması tavsiye edilir (Test yapılandırması Insight’ı destekler). Eğer Development yapılandırması kullanılıyorsa, yük düşüren DRED giderilebilir (-dpcvars=r.D3D12.DRED=0,r.D3D12.LightweightDRED=0).
Paketleme ve Yapı Boru Hattı
Çoklu Yapı ve Paketleme: Son derleme için Unreal Automation Tool (UAT) kullanılarak Cook & Package süreci çalıştırılır. Örnek komut:
RunUAT.batBuildCookRun-project="MyGame.uproject"-noP4-platform=Win64-clientconfig=Shipping-cook-allmaps-archive-archivedirectory="Build"-pak -prereqs
Bu komut tüm haritaları paketler, Oodle sıkıştırmalı pak dosyası oluşturur. Ayrıca Shader Precaching (-BuildAllShaderFiles) ve PSO önbellekleme (-CacheShaders) işlemleri yapılmalıdır. GUI üzerinden Paketleme yapılıyorsa, projenin Project Settings > Packaging seçeneklerinden “Pak içer” ve “Yayınlama (Shipping)” gibi ayarlar kontrol edilir. Shader derleme süresi için PSO Bundle Precache kullanılarak konsolda oyun başlatılmadan ön shader önbellekleme yapılabilir.

Yapılandırma Ayarları: Yukarıda belirtildiği gibi Test yapılandırması, profillemeye yakın performans sunar. CI/CD’de genelde Commandlet (örneğin UnrealEditor-Cmd.exe) veya UAT kullanılır. Örnek CI betiği:
UE4Editor-Cmd.exeMyGame.uproject-run=Cook-targetplatform=Win64-CrashForUAT-unattended
Sonra UnrealPak.exe ile çıktı paklanır. Süreç otomatikleştirilmiş sunucu/istemci yapılarını (örneğin çok oyuncu için) da içerebilir. Incremental Cooking ve Shader\Pak export gibi opsiyonlar, geliştirme sürecindeki tekrarları hızlandırır.
Manuel ve Otomatik Test Stratejileri
Manuel Test: Kritik sahneleri sabitlenmiş bir yerden veya kamera turuyla defalarca çalıştırarak analiz yapın. UE’nin BugIt konsol komutları ile belirli koordinata ışınlanabilir (ör. BugItGo x y z). Böylece her test aynı konumdan başlar. FPS ve frametime değişimleri stat fps ve stat unit ile izlenir. Proje ilerledikçe zaman zaman farklı PC’lerde stres testleri (yüksek çerçeve hareketleri, çok oyunculu durum vb.) yaparak gerçek zamanlı performansı kontrol edin.
Otomatik Test: Unreal 5’in deneysel Performans Otomasyon özellikleri (Automated Performance Tests) kullanılabilir. Bu, belirli seviyelerde predefined kamera yollarıyla FPS kaydedip kıyaslama yapmaya yarar. Şu an için topluluk eklentileri veya C++/Blueprint script’lerle basit test otomatları geliştirilebilir: örneğin, oyunun belli bir oyun modunda belirli görüntüye ulaşmasını bekleyip stat fps verisini loglayabilir. Ayrıca, her iş akışı veya CI aşamasında bir benchmark seansı düzenlenebilir; bu sırada farklı kalite ayarlarında (Low/High vb.) oyun otomatik oynatılır ve sonuçlar kıyaslanır. Özetle, otomatik testler için bir basit seviye tasarlayıp (sahne veya sequencer ile) ve giriş çıkış FPS değerlerini kaydeden betikler hazırlamak önerilir. Bu şekilde performans gerilemeleri erken tespit edilir.
CI/CD ve Performans Regresyon Testleri
CI/CD hatlarına (Jenkins, GitHub Actions vb.) performans testi eklemek önemlidir. Örneğin, her commit sonrası veya günlük olarak BuildCookRun tetiklenip, kararlı bir sahnede benchmark çalıştırılabilir. Toplanan veriler her kurulumda karşılaştırılır; ani FPS düşüşlerinde uyarı verilir. Unreal Insights ile CSV çıktısı alma ve toplu analiz yapma imkânları vardır. Basit bir örnek test akışı:
Otomasyon Komutları: Komut satırıyla şu biçimde test çalıştırılabilir:
UE4Editor-Cmd.exe MyGame.uproject -run=Automation.RunTests PerfBenchmark.TestSuite -log=PerfTest.log
Bu örnekte PerfBenchmark adlı bir test seti çağırılır. Test boyunca stat fps komutuyla çerçeve süresi loglanır.
Karşılaştırma: CI betiği çıktı loglarından FPS ortalamasını çeker ve önceden kaydedilmiş temel değerle karşılaştırır. grep, Python veya özel araçlarla basit kontroller yapılır.
Grafiksel Raporlama: Toplanan istatistikler (frame-time, CPU/GPU kullanım grafiği) görsel rapor olarak tutulur ve grafikler Jenkins/Git üzerinde gösterilir.
Epic’in yeni performans otomasyon eklentileri veya PowerShell tabanlı araçları kullanarak da bu süreci otomatize edebilirsiniz (Unreal Fest sunumlarında bahsedilen yöntemler gibi). CI/CI süreçlerinde her zaman Shipping/Test konfigürasyonlu paketlerin kullanılması, profil sonuçlarının güvenilirliği için tavsiye edilir.
Platform ve Sürücü Dikkate Almaları
Windows PC’de grafik API olarak DirectX 12 tercih edilmeli (UE5 varsayılanı), çünkü çok çekirdekli işleme ve gelişmiş ayarlara olanak tanır. NVIDIA GPU’lar için uygun yazılım geliştirme kiti (NVIDIA Nsight), AMD GPU’lar için Radeon Profilör kurulu olmalıdır. GPU sürücüler her zaman güncel tutulmalı; bazen özel geliştirici sürücüleri ihtiyaç duyulan optimizasyonları içerebilir. Yine de, profillemede sürücülerin kararlılığı için standart sürücü tavsiye edilir. Windows ayarlarında yüksek performans güç planı seçilmeli, ekran kaplama (VSync) kapatılmalıdır. Konsol başlangıç parametreleri arasında -novsync ile dikey eşleme ve -noverifygc gibi GC güvenlik kontrolleri devre dışı bırakılabilir. Grafik sürücüsü içeriklerini aşırı optimize eden “GPU Hızlandırma” gibi özellikler profil sonuçlarını yanıltabilir, testlerde bunlar kapalı tutulmalıdır.
Bellek ve Akış Yönetimi
Doku ve Mesh Akışı: Texture streaming varsayılan olarak açıktır; r.Streaming.PoolSize ile VRAM üst sınırı belirlenir. Limit aşıldığında düşük seviye mipmap’lar zorlanır. Büyük açık dünya projelerinde Sanal Doku kullanılıyorsa, aktif doku havuzlarını yönetmek için Engine CVar’larını (r.VT.*) ayarlayın.
Seviye (Level) Akışı: Erken tasarımda level streaming planlayın. Haritaları alt bölümlere ayırarak bellek yükünü azaltın ve yükleme süresini kontrol edin. Örneğin, şehrin farklı bölgelerini World Partition veya Streamed Levels ile bölün. Profil için stat levels, Loadtimes.dumpreport komutlarını kullanın. Yavaş açılan sahneler veya yüklenme takılmaları, bu komutlarla günlüğe kaydedilip analiz edilebilir. Gereksiz referansları ortadan kaldırmak için SizeMap aracıyla blueprint ve varlık bağımlılık zincirlerini inceleyin; gereksiz varlıklar bellek yükünü büyük ölçüde artırabilir.
Dinamik Bellek: Oynanabilir sahne büyüdükçe sistem belleği ve VRAM kritik hale gelir. stat Memory ve stat Streaming komutları ile bellek kullanımını izleyin. UE5’te düşük seviyeli bellek takibi (LLM) açılarak hangi varlıkların bellek yuttuğunu görebilirsiniz. Büyük fizik nesneleri, çok sayıda SFX veya aynı anda işlenen çok oyuncu verisi belleği hızla tüketebilir; bunları profilleyip gerekirse sınırlandırın.
Çok Oyuncu ve Ağ (Multiplayer/Network)
Çok oyunculu modlar CPU yükünü artırır (sunucu/tick yükleri, replike edilen nesneler, fizik işlemleri). Her oyuncu için ayrı bir işlem değilse bile server thread’i ek yük getirir. Ağ üzerinden gönderilen çoklu veri ile uğraşılırken replication ayarlarını optimize edin: Update Rate ve Net Relevancy ile gereksiz objelerin gönderilmesini önleyin. Mümkünse, sık kullanılan bir RPC’yi sıkıştırın (örneğin Fast TArray kullanımı) ve yalnızca gerçekten gerekli olan oyun verilerini yollayın. Çerçeve süresi kısıtlamasına ek olarak, ağ güncellemelerini de belirli bir bütçeyle sınırlandırmak gerekebilir. Performansı analiz ederken stat net komutu veya Net Profiler (UE data profili eklentisi) ile veri paketlerinin boyutunu ve gecikmeleri inceleyin. Ağdan kaynaklanan gecikmeler çoğunlukla yük dengeleme (tick), hatalar değil, bu nedenle profil önceliği genellikle CPU/GPU üzerindedir.
Indie Dostu Üçüncü Parti Araç ve Eklentiler
İndie ekipler için ücretsiz veya düşük maliyetli araçlar tercih edilmelidir:
Unreal Insights, RenderDoc, PIX, PresentMon, GPUView gibi ücretsiz profil araçları.
Unreal’ın yerleşik Oodle Data ve Oodle Texture sıkıştırması (Epic’in sunduğu) paket boyutunu küçültür.
ACL (Animation Compression Library) eklentisi Unreal Engine 5.3+’te varsayılan gelmekte olup animasyon bellek tüketimini yarıya düşürür.
Nemesis Ekosistemi: NVIDIA Nsight (ücretsiz), AMD uProf/RGP (ücretsiz), Intel GPA/VTune (Intel işlemci – bazen kısıtlı süreli ücretsiz) gibi GPU/CPU analiz araçları.
Mesh ve Doku Araçları: Simplygon veya UE Geometry Tools (merge actors, HLOD oluşturma), Quixel Bridge (ücretsiz Megascans varlıklar) gibi varlık optimizasyon araçları.
CI/CD Destek: Jenkins/GitHub Actions (açık kaynak), Perforce Helix (kaynak yönetimi), Trello/Jira (görev takibi) gibi projeyi destekleyecek yazılımlar.
Geliştirici Eklentileri:PerfTrack veya Frame Trim benzeri topluluk eklentileri, otomatik FPS testleri için kullanılabilir.
Örnek İş Akışı (Mermaid Diyagramı)
flowchart LR
A[Performans Hedeflerini Belirleme] --> B[Hedef Donanım Profili]
B --> C[Kalite/Ölçek Ayarları Yapılandırma]
C --> D[İlk Profil ve Ölçüm: Baseline]
D --> E[Bottleneck Tespiti (CPU vs GPU)]
E --> F[Varlık/Dokular Optimizasyonu]
E --> G[Render/ Işıklandırma Ayarları]
E --> H[Ağ ve Çokoyuncu Ayarları]
F & G & H --> I[Yeniden Profil ve Kıyasla]
I --> J[CI Otomasyon ve Regresyon Testleri]
J --> K[Son Paketleme ve Yayınlama]
Optimizasyon Aşamaları Zaman Çizelgesi
gantt
title Optimizasyon Zaman Çizelgesi (Örnek)
dateFormat YYYY-MM-DD
section Planlama
Hedef Tanımı :done, a1, 2025-06-01, 7d
section Altyapı & Hazırlık
Profil Araçları Kurulumu :a2, after a1, 5d
Benchmark Hazırlığı :a3, after a2, 10d
section Geliştirme ve Test
İçerik/Grafik Üretimi :a4, after a3, 180d
Düzenli Profil & Düzeltmeler :a5, after a4, 90d
section Son Optimizasyon
İnce Ayar ve Dengeleme :a6, after a5, 30d
Çalışma Son Testleri :a7, after a6, 14d Yayın Hazırlığı :a8, after a7, 7d Yukarıdaki diyagram, tipik bir proje için optimizasyonun erken planlamadan nihai yayın öncesine kadar geçen fazlarını gösterir (süreler örnektir).
Tüm öneriler resmi Unreal Engine dokümantasyonu, Epic Games ve önde gelen endüstri kaynakları dikkate alınarak hazırlanmıştır. Performans verileri gerçek testlere ve stüdyo notlarına dayanmakta, herhangi bir belirsizlik açıkça belirtilmiştir.
Bilgi : Görseller, Google Gemini Tarafından Üretilmiştir.
