Cloud Gaming Nasıl Çalışır? Ekran Kartı Olmadan Oyun Oynamanın Mühendisliği

· 2 dk okuma · NitroByte Ekibi

Bir oyunu bilgisayarınızda değil, kilometrelerce uzaktaki bir sunucuda çalıştırıp ekranınızda akıcı şekilde oynamak kulağa sihir gibi geliyor. Değil. Arkasında çok net bir mühendislik var ve bu mühendisliğin her parçası milisaniyelerle hesap verir.

Nitrova’yı geliştirirken öğrendiklerimizi, abartmadan anlatalım.

Döngü: girdi, görüntü, ağ

Cloud gaming aslında kesintisiz dönen bir döngüdür. Siz tuşa basarsınız; bu girdi sunucuya gider. Sunucudaki güçlü ekran kartı kareyi çizer. Kare anında video olarak sıkıştırılır, ağ üzerinden size gelir, çözülür ve ekranınıza basılır. Saniyede altmış kez ya da daha fazla.

  • Girdi: klavye, fare ya da oyun kolundan gelen olay sunucuya iletilir.
  • Çizim: oyun sunucudaki GPU’da, normal bir bilgisayardaki gibi çalışır.
  • Sıkıştırma: kare, donanım kodlayıcıyla milisaniyeler içinde videoya çevrilir.
  • Aktarım ve çözme: video size ulaşır, cihazınız onu çözer ve gösterir.

Asıl düşman: gecikme

Bu döngünün toplam süresi, tuşa basmanızla sonucunu ekranda görmeniz arasındaki farktır. Bir film izlerken birkaç saniyelik tampon kimsenin umurunda olmaz; oyunda ise 100 milisaniye bile hissedilir.

Kendi ölçümlerimizde, 12 Mbps’lik akışta ortanca ağ gecikmesi 9 milisaniye çıktı. Aynı hatta bant genişliğini 15 Mbps’e çıkardığımızda ise dalgalanma 65 milisaniyeye fırladı. Ders net: daha fazla bant genişliği her zaman daha iyi değildir. Hattın kaldırdığı kadarını kullanmak, akıcılığı korur.

Bant genişliği ve kalite dengesi

Görüntü kalitesi ile akıcılık arasında sürekli bir pazarlık vardır. Çözünürlük ve kare hızı arttıkça saniyede gönderilen veri artar. Hat bunu taşıyamazsa kareler gecikir ya da kaybolur.

Bu yüzden iyi bir istemci ayarları tahminle değil ölçümle seçer. Nitrova’da görüntü kalitesi otomatikte bırakıldığında ekranın çözünürlüğü, bant genişliği otomatikte bırakıldığında ise sunucunun hattın kaldırdığını ölçerek ayarladığı değer kullanılır.

Neden kendi sunucumuz?

Cloud gaming’de sunucuya fiziksel uzaklık doğrudan gecikmedir. Sunucular ne kadar yakınsa, döngü o kadar kısalır. Kendi altyapımızı İstanbul ve Bursa’daki veri merkezlerinde çalıştırmamızın bir sebebi de bu.

Sadece oyun değil

Aynı altyapı, ekran kartı isteyen her iş için kullanılabilir. Render, video kurgu ya da yapay zekâ eğitimi; uzaktaki bir RTX 3090’ı kendi makineniz gibi kullanmak mümkün. Hatta bazı iş yüklerinde ekran görüntüsünü bile göndermeye gerek yoktur: kod ve veri sizin bilgisayarınızda kalır, sunucuya yalnızca hesaplamanın o an ihtiyaç duyduğu baytlar gider.

Dürüst sınırlar

Cloud gaming her koşulda yerel bir bilgisayarın yerini tutmaz. Kararsız bir kablosuz bağlantı, en iyi sunucuyu bile kötü gösterir. Rekabetçi oyunlarda birkaç milisaniye fark yaratabilir. Bazı oyunların koruma sistemleri uzaktan oynamaya izin vermez. Bunları saklamak yerine baştan söylemek gerekir.

Nitrova şu an beta aşamasında ve her sürümde bu sınırları biraz daha geriye itiyoruz. Ekran kartı olmadan oynamanın, sihir değil iyi mühendislik olduğunu göstermek istiyoruz.

Sıradaki yazı Oyun Geliştirirken En Çok Yapılan 7 Teknik Hata (Ve Nasıl Önlenir)