PC oyunlarının optimizasyonları son yıllarda neden kötü?

Abone Ol
Açgözlü, kötü ve kapitalist oyun firmaları mı? Oyunun optimizasyon testlerini yapmaya üşenen tembel oyun geliştiricileri mi? Yoksa Senatör Palpatine mi? 28 Nisan 2023’de piyasaya çıkan Star Wars: Jedi Survivor oyununu bilgisayarımda açıyorum. Oynamaya ancak birkaç hafta önce fırsat bulabildim. Daha “intro” ekranında, oyun geliştiricisi Respawn’ın animasyon efekti takılmaya başlıyor. Oyuna girdiğimde ise, sanki 2023 yılında yapılmış AAA (en yüksek seviye) bir oyun değil de bir powerpoint sunumu görüyorum. Animasyonlar takılıyor; özellikle oyunun giriş bölümünden sonra kahramanımızın geldiği gezegenin bulunduğu bölümü oynarken zor zamanlar geçiriyorum. Animasyonlar ilerlemiyor bile. Nvidia 4070ti ekran kartı ve en güçlü işlemciye sahip bilgisayar sistemimde, oyun yeni nesil gençlerin deyimiyle “kasıyor”. Birkaç grafik ayarı düzenlemesine, bazı arkaplan işlemlerinin kapatılmasına ve hatta Nvidia’nın hassas ayarlarına çeşitli müdahaleler etmeme rağmen oyunda hâlâ takılmalar yaşanıyor. Yaptığım son ayarlarla oyun biraz daha akıcı oynanıyor ama paranın pul olduğu şu günlerde binlerce liralık bilgisayarla pürüzsüz bir oyun oynama keyfi yaşamadığınızda artık kızmaya başlıyorsunuz. Ama şaşırmıyorum. Oyunun, bilgisayar oyun satış mağazası ve üreticisi Steam’deki değerlendirmelerinde[1] “karışık (mixed)” yorumlar alması ve Metacritic’te oyuna 238 kullanıcının 169’unun negatif oy vermesinin[2] altındaki sebep bu. Eğer optimizasyonu çok iyi olsa belki de senenin en iyi oyunlarından biri olacak bir oyun, PC’lere yönelik berbat optimizasyonun neticelerini yaşıyor. Tabii ki SW: Jedi Survivor tek örnek değil; son yıllarda PC oyunculuğu, optimizasyon (yazılımın donanıma en uygun hâle getirilecek şekilde çalıştırılması) sorunu yaşayan pek çok oyun ile çalkalanıyor. Peki bunun sebebi ne? Açgözlü, kötü kapitalist oyun firmaları mı? Oyunun optimizasyon testlerini yapmaya üşenen tembel oyun geliştiricileri mi? Yoksa Senatör Palpatine mi? Bakalım. DEĞİŞEN BİR TAKIM ŞEYLER Her ne olursa olsun bilgisayar oyunları artık eskisi gibi değil. İlk Doom ya da Starcraft oyunlarının bu yana 30 yıldan fazla bir süre geçti ve yeni oyunlar aynı kodlarla yapılmadığı gibi, oyuncu kitlesine sunulan ve kitlenin istediği ile 30 yıl önceki kitle aynı değil. Oyunlar daha büyük, daha etli ve butlu. Artık küçük işler çok yapılmıyor. Enteresan bir şekilde de küçük iş yapan geliştiricilerin oyunları tutulduğunda bu oyunlar 90’ların kült ve minimal oyunlarını aratmadığı için hemen tutuluyorlar. Minecraft, Stardew Valley, Undertale böyle oyunlar. Hatta öyle ki voxel ya da pixel art denilen retrospektif bir tarz ile yapılan bu oyunları sevenler arasında, büyük firmaların ürettiği next-generation (son nesil) oyunları hor görenler bile olabiliyor. Bu ayrı bir yazının konusu olsun. Techoverwrite web sitesinin 27 Nisan 2023 tarihli haberinde üç ayrı sebep sıralanmış:
  1. Oyunlar için daha önce hiç olmadığı kadar mesai yapılıyor.
  2. Oyunlardan kazanılan para ve pazarlama stratejileri değişiyor.
  3. PC oyunlarının yazılımları daha öncesinden çok daha farklı yazılımlardan oluşuyor. [3]
İlk sebebi açarsak, çoğu oyuncu için facia bir lansmanla piyasaya sürülen Cyberpunk 2077’deki aşırı mesai iddialarını hatırlamak mümkün.[4] Bu aşırı mesaiye oyun yazılımcılarının diliyle “crunching” deniyor. Son dönem bilgisayar oyunlarının yazılımlarının gerçekten çok fazla mesai gerektirdiği artık herkesin bildiği bir gerçek. O kadar ki, oyun yapımcılarına aşırı mesai yükleseniz bile sırtlarındaki iş yükünün altından kalkmalarının ne kadar zor olduğunu piyasaya sürülen oyunların hatalarından anlayabiliyorsunuz. Peki fark ne? Eski oyunları şuna benzetebilirsiniz: Kendi kendine yol bulması gereken bir oyuncak araba programladığınızı düşünün. Bu arabanın programlaması için gereken kodu yazıyorsunuz. Arabanın önündeki engelleri aşacak şekilde programlıyorsunuz. Araba birkaç tahta bloku geçecek şekilde programlanabiliyor. Yeni oyunları da şuna benzetebiliriz: Ancak bununla yetinmiyorsunuz. Arabanın gerekirse önüne çıkan ufak bir göletin etrafından dolaşması, eğer süspansiyonları iyiyse yükseltileri devrilmeden çıkmasını ve hatta arabaya bir tür nitro motor takarak hızını eskisinden daha fazla artırmayı sağlamaya çalışıyorsunuz. Kodun teknik komplikasyonları giderek artacaktır.
Oyun yapımcılarına aşırı mesai yükleseniz bile sırtlarındaki iş yükünün altından kalkmalarının ne kadar zor olduğunu piyasaya sürülen oyunların hatalarından anlayabiliyorsunuz.
Bir oyun içerisindeki “dünya” ne kadar çok harita seviyesi içeriyorsa, oyuncu karakteri ve oyuncu dışı karakterinin (NPC) programlaması da o kadar zorlaşmaya başlar. Bir de bunun üzerine oyunun hikâyesini ekleyin. Açık dünya oyunlarında sıklıkla karşılaşılan bir durumu örnek verelim: Diyelim ki, açık dünyada kendi kendinize bir keşif yapıyorsunuz, uğursuz bir örümcek canavarı öldürüyorsunuz. Ve üzerindeki nesneleri alıyorsunuz. Ancak bir süre sonra haritanın başka bir yerinde gezerken fark ediyorsunuz ki, bu örümcek canavarı öldürmenizi isteyen oyuncu dışı bir karakter var; bu durumda oyun otomatik olarak görevi tamamladığınızı farz ediyor. Ancak eğer oyuncunun bu şekilde davranacağı programcı tarafından gözden kaçırılmışsa (ki kaçırılması çok kolay) oyun hata verebiliyor. O NPC’yi bulamıyorsunuz ve ödülünüzü alamıyorsunuz vs. Bu senaryoya ek olarak pek çok kombinasyonu da ekleyin; NPC’yi yanlışlıkla görevi almadan öldürüyorsunuz, NPC başka biriyle konuşurken görevi veremiyor… Yani yeni nesil oyunlar, pek çok “eğer…ise” kodlarından oluşan karmaşık döngüleri içeren binlerce ve milyonlarca kodu barındırıyor. SENİ KAPİTALİST DOMUZ! Eskiden Sovyetlerin kapitalistler için sıklıkla kullandığı bu sözcük, şu sıralar sadece çevreyi aşırı kirleten Nestlé için söylenmiyor. Bundan 11 sene önce, Amerika’nın En Kötü Şirketi ödülünü bir oyun firması olan EA (Electronic Arts) aldı.[5] Forbes’daki habere göre kötülük yapmak temel alınacak olursa EA, Amerika’nın (dolayısıyla dünyanın) en kötü şirketi değildi elbette. İnsanları kimyasallarla zehirleyen, okyanusları kirleten, gıdalarla obez eden, Güneydoğu Asya’da çalıştırdıkları çocuk işçilere zorla metamfetamin veren firmalarla kıyasla EA, Migros’un yanındaki mahalle bakkalı ölçeğinde kalır.
Oyun, -özellikle çok sevilen bir markanın devamıysa- (Star Wars ya da Assassin’s Creed gibi) “nasıl olsa biz bunu günahıyla sevabıyla satarız, oyundaki hataları sonra yamalarla düzeltiriz” şeklindeki satış stratejisi, oyuncuların haklı olarak öfkesini çekiyor.
Elbette bunun sebebi, EA’den haklı olarak nefret eden oyuncu kitlesinin oylara akın etmesiydi. Çünkü EA de neo-liberalizmin alışılageldik “business model”ini takip ederek agresifleşen firmalardan birisi. EA, oyuncuları “microtransaction” ile zaten satın alınmış oyunun içerisine mobil oyun işletme modeliyle ek para vererek bir şey almaya özendirmesiyle, oyunların yapımındaki özensizlik ile oyuncuları kandırması ve belirli markaları (Star Wars, FIFA, Madden vs.) elinde tutmasından başka bir şey yapmaması gibi oldukça kötü ve etik dışı görünen modus operandisi ile biliniyor. Bunun ardında da oyuncuların çoğu kere dillendirdiği pek çok AAA oyun üreticisi firmanın, “kervan yolda düzülür” zihniyeti yer alıyor. Oyun, -özellikle çok sevilen bir markanın devamıysa- (Star Wars ya da Assassin’s Creed gibi) “nasıl olsa biz bunu günahıyla sevabıyla satarız, oyundaki hataları sonra yamalarla düzeltiriz” şeklindeki satış stratejisi, oyuncuların haklı olarak öfkesini çekiyor.[6] TEKNİK SORUNLAR Haberdeki son açıklama ise başka bir mantıklı gerekçeyi dile getiriyor: Oyunların yazılımı, DRM (Digital Rights Management/korsana karşı kopya koruma sistemi) yazılımları ile korunuyor. Özellikle AAA oyun üreten firmalar, oyunun mali değerinin yüksekliğini oyunu çevrimiçi yapmak ve kopya koruma programlarını devreye sokmak suretiyle koruma cihetine gidiyorlar. Ancak DRM sistemleri (özellikle Denuvo) çok fazla eleştiri konusu olmaya başladı.[7] DRM sistemlerine ilişkin en büyük eleştiri, DRM’in yazılımı kopyadan koruması değil, yazılımı neredeyse oyuncunun kendisinden koruyacak kadar ileri gidecek bir güvenlik duvarı oluşturması. Bazı kullanıcılar, satın aldıkları orijinal oyuna bile zor eriştiklerini söylerken haklılar. İkinci en büyük eleştiri ise DRM yazılımlarının yine özellikle Denuvo markasının, oyun performansını etkilemesi. Bazı kullanıcılar Denuvo’nun SSD’leri (katı hal sürücülerini) etkilediğini ileri sürmesine karşılık, Denuvo bu iddiaları reddediyor.[8] Burada teknik detaylar beni aşsa da Denuvo’nun oyun performansları endeksinde düşüş yarattığı yönündeki iddialar bazı kaynaklarca dile getiriliyor: Tablo 1. Listede adı geçen oyunların Denuvo ile ve Denuvo’suz FPS ve menü ile test yükleme oranları (Frame per second, saniye başı kare) oranları yer alıyor (Düşük yükleme oranları iyi, yüksek FPS oranları iyi). [9] Buna ek olarak, özellikle tek oyunculu (single-player) hikâyeleri içeren oyunlarda, oyunların neden DRM’in işini görmesi için internete bağlanması gerektiği de başka tepki çeken bir unsur.
DRM sistemlerine ilişkin en büyük eleştiri, DRM’in yazılımı kopyadan koruması değil, yazılımı neredeyse oyuncunun kendisinden koruyacak kadar ileri gidecek bir güvenlik duvarı oluşturması.
Tüm bu sebeplere haklılık vermelerine karşılık, yazımın başlığını oluşturan sorunun “son yıllarda” kısmına itiraz edenler de var. Aslında onların da haklılık payı var; PC oyunlarının kimi zaman piyasaya oldukça hatalı çıkması sadece son yıllarda olan bir şey değil. Traece adlı Reddit kullanıcısının hatırlattığı bir şey, bende de eski anıları hatırlattı[10]. Oynadığımız bazı oyunlar BSoD (Blue Screen of Death) yani mavi ekran hatası ile bilgisayarın yeniden başlamasına neden olacak kadar kötü olabiliyordu. SONUÇ Tüm bu sebeplere ek olarak bir sebep daha ileri sürülmekte: PC’lerin başına buyruk yaratıklar olması. Yani şunu demek istiyorum; PC’ler standart ekipmanlara sahip değiller. Hele kendi bilgisayarınızı kendiniz topluyorsanız, teknik olarak sistem bileşenleri aynı nesilde olmak kaydıyla (örneğin DDR 5 bir anakarta DDR 4 RAM takamazsınız) farklı markaları da işin içine katarsak binlerce kombinasyondan oluşan sistem yapabilirsiniz. Bu da hâliyle oyun geliştiricilerinin performans analizlerini test ederken bazı sistemleri ister istemez ihmal etmesine neden oluyor. Dolayısıyla PC’lere kıyasla yekpare ve standart bileşenlere sahip olan konsollarda hata oranı düşük olurken, PC’lerde daha fazla olabiliyor. Ancak burada şu soru sorulabilir; markalar ne kadar farklı olsa da bir işlemcinin kaç mhz ile çalıştığı o modele göre bellidir. Örneğin söz konusu işlemcinin AMD, ekran kartının ise Nvidia olması (çünkü ikisi farklı yonga setlerine sahipler ancak AMD’nin işlemcisi, Intel ile aynı fonksiyonu görür) ile işlemcinin Intel olup, kartın Nvidia olması arasındaki kombinasyon belirli bir sabit üzerinden değerlendirilemez mi? Bunu bilmiyorum, belki birileri beni bu konuda aydınlatabilir. Son olarak da geçenlerde yeni bir sistem satın alan arkadaşımla yaptığım “benchmark” yani performans testine de değinmek istiyorum. Arkadaşım benim Nvidia 4070ti’ımın birkaç model altı AMD muadili ekran kartı almasına karşılık testler tutarsız çıktı. Ekran kartı firmalarının vadettikleri ile yazılımların verdiği arasındaki değerler giderek değişiyor. Bu da ayrı bir yazının konusu olsun. --- [1] https://store.steampowered.com/app/1774580/STAR_WARS_Jedi_Survivor/ (22.06.2023) [2] https://www.metacritic.com/game/pc/star-wars-jedi-survivor (22.06.2023) [3] https://www.techoverwrite.com/pc-games-buggy/#More_Work_Goes_into_Games_Than_Ever_Before (22.06.2023) [4] https://www.polygon.com/2020/12/4/21575914/cyberpunk-2077-release-crunch-labor-delays-cd-projekt-red#:~:text=Employees%20at%20CD%20Projekt%20Red,is%20sadly%20all%20too%20common. (22.06.2023) [5] https://www.forbes.com/sites/insertcoin/2013/04/09/ea-voted-worst-company-in-america-again/?sh=2a8fbd227aeb (22.06.2023) [6] https://www.reddit.com/r/pcgaming/comments/t1atht/whats_with_games_and_bad_optimization_lately/ (22.06.2023) [7] https://www.makeuseof.com/what-is-denuvo/#:~:text=In%20short%2C%20Denuvo%20Anti-Cheat,gaming%20performance%20on%20its%20own. (22.06.2023) [8]https://en.wikipedia.org/wiki/Denuvo#:~:text=Denuvo%20has%20been%20criticised%20for,Solutions%20has%20denied%20both%20claims. (22.06.2023) [9] https://www.extremetech.com/gaming/282924-denuvo-really-does-cripple-pc-gaming-performance (22.06.2023) [10] https://www.reddit.com/r/pcgaming/comments/t1atht/whats_with_games_and_bad_optimization_lately/ (22.06.2023)