PUBG, resmi internet sitesi üzerinden oyuncuları bilgilendirmeye devam ediyor. “Konsol – Geliştirici Raporu” serisinin ikinci yazısını paylaşan ekip, teknik konuları oyunculara basitçe aktarmaya çalışıyor. Oyunun resmi sitesi pubg.com’dan paylaşılan o yazı hemen aşağıda sizlerle.
Konsol – Geliştirici Raporu #2
Herkese merhabalar,
Konsol – Geliştirici Raporu serisinin ikinci bölümüne hoş geldiniz!
Bu serinin ilk paylaşımında, görüş alanı aralığına ve bu aralığın oyunun performansını nasıl etkilediğine değinmiştik; bu paylaşımı kaçıranlar, buradan göz atabilirler.
Bugünkü paylaşımda, GPU süresini ve çeşitli unsurların GPU süresini azaltmada oynadığı rolü inceleyeceğiz.
GPU Süresi Nedir?
GPU süresi, basit bir ifadeyle, GPU’nun (Grafik İşlem Birimi) tek bir kareyi hesaplaması için gereken süredir. Gereken GPU hesaplamalarının sayısı ne kadar fazla olursa, GPU süresi de o kadar uzun olur. GPU süreleri oyunu oynarken görüntülenen FPS (saniyedeki kare sayısı) üzerinde doğrudan etki yaratır ve GPU sürelerinin uzaması da performansı doğrudan etkileyebilir. GPU süresini etkileyen çok sayıda unsur vardır ve oyunun ekranda gördüğünüz farklı görsel ögelerinin tümünün işlenmesi için gereken süre de bu unsurlardan biridir.
GPU, bilgisayar grafiklerini işleyen bir işlemcidir. Ekranda, her karede (saniyede birden çok kez) milyonlarca piksel görüntüler. Ekranda kaç pikselin görüntüleneceğini kullanılan çözünürlük belirler. Çözünürlük yükseldikçe, görselin her karesinde görüntülenebilen piksel sayısı ve ayrıntı düzeyi artar ancak bunun için daha fazla işleme gücü gerekir.
4K çözünürlük, en yaygın kullanılan 1080p çözünürlüklerle kıyaslandığında, 4K’da 1080p’nin 4 katı piksel bulunduğu ortaya çıkar. Bu da, bir GPU’nun işlemesi gereken veri miktarının kıyaslamalı olarak 4 kat arttığı ve dolayısıyla bu artışın GPU süresini de artırdığı anlamına gelir.
Dinamik Çözünürlük
Not: Dinamik Çözünürlük seçeneği şu optimizasyon aşamasında ve ileride sunulacak bir güncellemeyle hem PS4 hem de Xbox One’da kullanılabilecek.
Dinamik Çözünürlük, çözünürlüğün gereken GPU hesaplama sayısına bağlı olarak dinamik olarak değiştiği bir özelliktir. Çözünürlüğü, değişken bir yenileme hızı ile gerçek zamanlı olarak 1440p’den 4K’ya dönüştürür. Oyuna girip maç yaptığınızda ve GPU yoğun bir işleme yükü altında olduğunda, çözünürlük, kararlı performansı sürdürmek üzere otomatik olarak geçici süreliğine düşürülür.
Dinamik çözünürlük seçeneğinin GPU süreleri üzerindeki etkisini aşağıdaki grafik yardımıyla göstermek istiyoruz. Bu grafiğin, GPU süresini milisaniye olarak ölçtüğünü ve saniyedeki kare sayısını göstermediğini lütfen dikkate alın. Dolayısıyla bu örnekte, daha düşük düzey daha iyi sonuç anlamına gelmektedir.
* Yukarıdaki grafikte gösterilen GPU süresi, XBox One X kullanılarak hesaplanmıştır.
Dinamik çözünürlük açıkken, GPU sürelerinde %20 oranında bir işleme hızı artışı gözlenmiştir. Daha düşük GPU süresi, GPU’nun her kareyi daha hızlı işlediği anlamına gelir ve bu da daha iyi ve daha kararlı performans sağlar!
GPU Örnek Ayırma
GPU Örnek Ayırma, Xbox One X ve PS4 Pro için 1.0 sürümünden bu yana etkin ve ilk uygulanışından bu yana performansı yükseltmek için çok sayıda iyileştirme gerçekleştirdik. GPU Örnek Ayırması için bir sonraki açık sunucu güncellemesinde ve sonrasında da ilave iyileştirmeler yapacağız. Bu bölümün ilerleyen kısımlarında, yapılacak değişikliklere ilişkin daha fazla bilgi alabilirsiniz.
GPU Örnek Ayırma için yapılacak iyileştirmelerin, 1. nesil Xbox One ve S modellerinin yanı sıra 1. nesil PS4 için de halen optimizasyon aşamasında olduğunu ve ileri bir tarihte uygulanacağını lütfen dikkate alın.
Erangel, Sanhok ve Vikendi haritalarında ağaçla dolu çok sayıda orman görebilirsiniz. Mümkün olan en iyi performansı elde etmek için, aynı model ağaçlar “örnekleme” kullanılarak işleniyor. Bu, ağaçları tek tek çizmenin işleme maliyetini azaltıyor ve dolayısıyla GPU, aşağıda gösterilen ormanı gönderilecek ilave çizim istemlerini (GPU’nun görevleri gerçekleştirmesine yönelik kaynak yoğun istekler) beklemeksizin çizebiliyor.
Görüş mesafesindeki aynı model ağaçlarda mümkün olduğunca çok ağaç için örnekleme kullanıldığında çizim istemlerinin sayısı azaltılıyor ve ağaç çizmenin toplam maliyeti düşürülüyor, böylece performans yükseliyor.
Peki 8x dürbün kullanarak yakınlaştırırsanız ne olur?
Nesneler, oyuncu ile aralarındaki mesafeye bağlı olarak farklı kalite düzeylerinde çizildiklerinden Ayrıntı Düzeyi (LOD) istenilen performansın elde edilmesinde önemli bir rol oynar. Normal görünümde (dürbün kullanılmadığında), sadece ilk örnekteki en yakın ağaçlar LOD 0 (en yüksek nesne detayı) olarak çizilir ancak dürbünle bakıldığında dürbünün görüş alanına giren tüm örnekler (hedefteki ağaçlar dahil) LOD 0 olarak çizilir ve böylece GPU süresi önemli ölçüde artar (performans düşer).
Dürbünle baktığınızda görüş mesafesi genişler ve dolayısıyla uzaktaki ağaçlar daha ayrıntılı görüntülenir. Yukarıdaki şekilde, dürbün ile sadece 3 ila 7 ağaç görürsünüz ancak GPU görüş alanı aralığında kalan her örneği çizmeye çalışır. Durum böyleyken örnek kullanımına dikkat edilmesi gerekir çünkü örnek kullanmadan sadece 7 ağaç çizilebilecekken örnek kullanıldığında gereksiz ağaçlar da çizilir.
Nesnenin ayrıntı düzeyi (LOD) ekrandaki orantılı boyutuna göre belirlenir ve nesnenin ayırma mesafesi, oyuncu ile arasındaki mesafeye bağlı olarak o nesnenin işlenip işlenmeyeceğini belirler.
GPU Örnek Ayırmaya ilişkin ileride yapılacak olan optimizasyonlar ile hedefimiz, ekranda görünmeyen, yüksek ayrıntı düzeyine sahip nesneleri işlememek ve örnekleme sırasında hangi nesnelerin hangi sırayla işleneceğini belirlemek için daha akıllı bir süreç geliştirmektir. Bu iki yöntemle performansı yükseltmeyi hedefliyoruz. GPU, tüm nesne ayrıntı düzeylerini (LOD) bildiğinden, tüm örnekler incelendikten sonra örnekleme için sadece düşük LOD modelleri seçilir. Ardından, işleme süreci önden arkaya doğru gerçekleştirilir. Bu seçme ve işleme sürecine GPU Örnek Ayırma diyoruz.
Aşağıdaki grafikte, GPU Örnek Ayırma 4K çözünürlükte açık ve kapalıyken GPU süreleri kıyaslanıyor.
https://www.pubg.com/wp-content/uploads/2019/01/4.png.0824ace839e2428661b32120a4838835.png
* GPU Süresi, 8x dürbün kullanılarak ölçülmüştür.
* Yukarıdaki grafikte gösterilen GPU süresi, XBox One X kullanılarak hesaplanmıştır.
GPU Örnek Ayırma açıkken, GPU süresinde yaklaşık %30 oranında iyileşme görüyor ve daha kararlı bir sonuç elde ediyoruz. GPU Örnek Ayırma kapalıyken, GPU sürelerinin daha uzun olduğunu ve önemli ölçüde dalgalandığını görebilirsiniz.