Polonyalı geliştirici EXOR Studios tarafından bir blog gönderisinde duyurulduğu üzere, 2021’in sonlarında PC ve konsollarda piyasaya sürülen aksiyon strateji oyunu Riftbreaker yakında ücretsiz bir performans artışı alacak. Steam’de yayınlandı.

Küçük geliştirme stüdyosu, motorunu başlangıçta aşağıdakiler gibi açık kaynaklı yazılımlardan geliştirdi: canavar (Nesne Yönelimli Grafik İşleme Motoru, bugün MIT lisansı altında mevcuttur). Zamanla, EXOR onu kendi haline getirecek kadar modifiye etti: Schmetterling motoru.

EXOR, stüdyonun ilk oyunu olan yukarıdan aşağıya yarış oyunu Zombie Driver (2012) için ileri işlemeyi kullandı. Bununla birlikte, ileri işleme, bundan daha fazlasını eklemenin ne kadar karmaşık olacağı nedeniyle, geliştiricileri esasen tek bir dinamik ışıkla sınırladı.

Çift çubuklu nişancı/kule savunma oyunu X-Morph: Defense (2019) ve The Riftbreaker’da geliştiriciler ertelenmiş gölgelemeye geçti. Bu ekran alanı tekniği, sahnenin geometrisinin ve ışıklandırmanın ayrı ayrı işlenmesi ve her bir ışığın yalnızca ışıktan fiilen etkilenen pikseller için hesaplanması nedeniyle ileriye doğru işlemeye göre büyük bir avantaj sağlar. Ertelenmiş gölgeleme, oyun sahnelerinde daha fazla sayıda dinamik ışığa izin verdi ve kendi sınırlamaları olsa da 2010’dan itibaren çok popüler hale geldi.

Ertelenmiş gölgeleme, sahnede yüksek miktarda dinamik ışık olduğunda o kadar iyi ölçeklenmez ve ayrıca şeffaf nesneler bilgilerini G-Buffer’ında depolayamaz, bu da opak olmayan nesnelerin aydınlatma için dikkate alınamayacağı anlamına gelir.

Bu nedenle EXOR, The Riftbreaker: Tiled Deferred Shading için bir işleme yükseltmesi sunuyor. Bu algoritma ile ekran 16×16 piksel karolara bölünür ve her karo kendisini etkileyen ışıklar hakkında bilgi depolar. Bu daha sonra hem şeffaf hem de şeffaf olmayan nesneler için aydınlatmayı hesaplamak için kullanılır.

İşte Döşenmiş Ertelenmiş Gölgelendirmeye genel bakış, adım adım:

  1. G-buffer pass – Tüm opak geometriyi çizin.
  2. Karo kesiklerini hesaplayın – arabellek minimum/maksimum derinliğine bağlı olarak kesik parçaları karo başına ayrı ayrı hazırlayın.
  3. İtlaf ışıkları geçer – ışığın karoyla örtüşüp örtüşmediğini kontrol etmek için frustumları kullanın ve indeksini ışık indeksi listesine ekleyin.
  4. Opak nesneler için ışık gölgelemesini hesaplayın – Tek geçişli ekran alan ışığı hesaplaması için G-Buffer’ı ve hazırlanmış ışıklar listesini kullanın.
  5. Opak olmayan nesneler için açık gölgelemeyi hesapla – Opak olmayan her bir nesneyi çizin ve yalnızca döşemeye ait ışıklar için piksel başına ışık gölgelemesini hesaplayın.

EXOR Studios’a göre Tiled Deferred Shading, tüm ışık kaynakları için G-Buffer’ın yalnızca bir kez okunmasına izin verir. Bu, 202 ışıkla %100’e yakın bir performans artışına kadar çok sayıda aktif dinamik ışıkla çok daha iyi ölçeklendirme sağlar.

Tabii ki, bu ortalama bir kullanım durumu senaryosu değil. EXOR, Riftbreaker’ı CPU odaklı bir kıyaslama ile test etti ve RTX 3080’de %17’lik bir gelişme bulurken, 6800XT saniyede yalnızca %11,6 kare kazandı.

Bununla birlikte, hediye bir atın ağzına bakmamalısınız ve burada durum kesinlikle böyle. EXOR, performans artışının ötesinde, hacimsel sis desteği ile Schmetterling motorunu daha da genişletmek için Tiled Deferred Shading’i kullanmayı planlıyor.

Riftbreaker oyuncuları, ücretsiz World Expansion 2 güncellemesi yayınlandığında Tiled Deferred Shading’i kendileri kontrol edebilecekler. EXOR ayrıca oyuna co-op multiplayer eklemek için çalışıyor; bizi izlemeye devam edin ve bu güncellemeler yayınlandığında size haber vereceğiz.

Bu hikayeyi paylaş

Facebook

twitter



genel-17