Kucuk bir merak uzerine yola cıkmıştım. Masaustu ortamı olmadan oyun oynayabilir miyim ve ne kadar performans kazanırım? Eğer oyun native Linux oyunuysa ve ucbirimden calıştırırsanız calışıyordu. Ben burada yaygın olduğu icin supertuxkart'ı denemiştim. Ekrana imlec cıkıyor ancak hicbir girdiye yanıt vermiyordu. Başka bir oyunda denememiştim. Sonrasında Steam'ın gamescope ile calıştırılabildiğini fark ettim. GNOME gibi bir masaustu ortamı olmadan doğrudan Gamescope'u cağırıp Steam'ı calıştırabiliyorsunuz.
Gamescope, Steam Deck icin geliştirilmiş bir wayland dizgileyicisi. Valve, Gamescope'a "gomulu dizgileyici" olarak kategorilendirmiş. Bu dizgileyicinin en buyuk farkı pencere oluşturma, arka plan, doşeme, ust bar gibi temel ozelliklerden dahi yoksun olup sadece oyun penceresini gosterecek ve girdileri pencereye iletmeyi sağlayacak şekilde tasarlanması. Bu sayede en hafif pencere yoneticisiyle dahi elde edemeyeceğiniz kadar duşuk bir kaynak tuketimi elde edebiliyorsunuz. Gamescope'un GitHub sayfasında belirtildiğine gore masaustu ortamlarına kıyasla daha duşuk giriş gecikmesi sağladığı. Herhangi bir test veya dayanak paylaşılmamış, sadece nasıl yapıldığı ve hangi durumlarda nasıl giriş gecikmesine engel olduğu belirtilmiş. Burada somut veriden cok deneyimlerimi aktaracağım, cok pratik olmadığı icin uzerinde pek test yapma gereksinimi bulmadım.
Oncelikle Gamescope'a ihtiyacınız var. Debian, Fedora, Ubuntu ve Arch gibi bircok dağıtımda paketlenmiş halde bulunabiliyor. Bilgisayarınızda Steam'ın kurulmuş olması ve en azından bir kere grafiksel arayuz kullanarak giriş yapmış olmanız yani kutuphaneye girebiliyor olmanız gerekli. Steam'de ana-akım dağıtımların coğunda paketli olarak geliyor. Bunun haricinde X ve wayland bağımlılıklarının karşılanıyor olması gerekiyor ki masaustu ortamı calıştırıyorsanız bunların zaten kurulmuş olması lazım.
Tty ekranına giriş yapıp Steam'a grafiksel arayuzden giriş yapmış olduğunuz hesapla giriş yapmanız gerekiyor. Daha sonrasında şu komutu calıştırın;
gamescope -e -- steam -gamepadui
Bu kod Gamescope'ı Steam entegrasyonu(-e değişkeni sayesinde) ile tam ekran modunda başlatacak. Arayuz acıldığında Steam Deck'in arayuzu karşınıza cıkacak. Benim durumumda ek bir şey yapmama gerek kalmadı, klavye ve fare doğrudan calıştı. Fare imleci, X sunucusunun hicbir fare imleci ayarlanmadıysa ortaya cıkan imleci oldu. Benim bilgisayarımda imlec gozuktuğunde ciddi ekran hataları oluştu. Klavye tuşuna basınca imlec gizlenince bu sorun duzeliyordu, fareyi hareket ettirirseniz gene cıkıyor.
Benim bilgisayarım MUX'a sahip olmayan Intel + NVIDIA bir laptop. NVIDIA Prime render offload ile Gamescope'ı calıştırırsanız calışmıyor. Intel'den calıştırdığımda yani hicbir şey girmediğim zaman calıştı. Oyunlarda Prime render offload ayarlarını gamescope icin değil de Steam'de oyunlar icin cevresel değişken(başlatma seceneği) olarak girerseniz kullanabiliyorsunuz. Doğrudan cıkış alabildiğiniz NVIDIA ve AMD DGPU'larda bu sorunu yaşamamanız lazım.
Elimde sadece F1 2020 olduğu icin o oyunu denedim. GNOME'daki yaklaşık performansını biliyorum. Avusturya GP'de benchmark calıştırıldığında minimum 37, ortalama 43 ve maksimum 50 FPS alınıyor. Test sonunda 4550-4600 kare cizilmiş oluyor. Gamescope'da aynı oyun, aynı ayarlarda ve aynı benchmarkta calıştırıldığında testte herhangi bir değişiklik olmadı. Aynı sonucları alabildim. Giriş gecikmesinde herhangi bir fark hissetmedim. Oyun hem GNOME'da hem de Gamescope'da temizdi.
Oyundan cıkıp geri donebiliyorum ancak Steam'den cıkamıyorum. Başka bir Tty'ye gecip "kill" komutuyla Steam'ı durdurmanız gerekiyor, o zaman ancak cıkıyor. Merak ettiğim ve olur mu dediğim bir şeydi ve yapabildim. Bilgisayarımda GNOME vs. olmasa doğrudan Steam'den oyunlarımı oynayabiliyorum. Ancak cok pratik değil ve ben sadece bir oyunda denedim. Guzel bir deneyimdi ancak gereksiz bir kulfet yarattığından işime yarayacağını sanmıyorum.