Oyun konsolları için geliştirilen emülasyon yazılımları, el konsollarının donanım sınırlarını zorlamaya devam ediyor. Açık kaynak kodlu yazılım projesi SharpEmu, PlayStation 5 oyun konsolunun açılış oyunu Astro’s Playroom’u Valve’ın taşınabilir cihazı üzerinde çalıştırmayı başardı. Bu gelişmeyle birlikte Steam Deck PS5 emülatörü çalıştıran ilk taşınabilir bilgisayar platformlarından biri haline geldi.
Yapılan testlerde oyun, herhangi bir bulut yayın servisi veya uzaktan oynatma yöntemi kullanılmadan doğrudan cihazın dahili donanımı üzerinde çalıştırıldı. SteamOS işletim sisteminin masaüstü modunda gerçekleştirilen denemede emülatör yazılımı, PlayStation Studios yükleme ekranını ve giriş menülerini ekrana getirmeyi başardı.
Astro’s Playroom Testi ve Performans Verileri
SharpEmu geliştiricileri tarafından paylaşılan test sonuçları, PlayStation 5 mimarisinin el konsolları üzerindeki ilk somut uygulamasını temsil ediyor. Cihaz üzerinde başlatılan Astro’s Playroom, konsol kodlarını başarılı bir şekilde çözümleyerek başlangıç aşamalarını geride bıraktı.
Test sürecinde elde edilen kare hızı verileri, projenin henüz yolun başında bulunduğunu gösteriyor. Steam Deck üzerinde elde edilen ortalama performans 0,6 FPS seviyesinde kalırken, anlık değerler 0,5 ile 1 FPS arasında değişim gösterdi. Görsel kare üretimine paralel olarak ses iletiminde de takılmalar ve veri kayıpları meydana geldi.
Kare hızının 1 FPS sınırını aşamaması oyunun bu aşamada oynanabilir bir deneyim sunmadığını gösteriyor. Ancak x86 tabanlı ve taşınabilir bir donanımda modern konsol mimarisinin öykünülmesi, yazılım mühendisliği açısından kritik bir başarı olarak değerlendiriliyor.
SharpEmu Mimarisi ve Çalıştırılan Diğer Oyunlar
SharpEmu, PlayStation 5 sistem mimarisini bilgisayar donanımları üzerinde taklit etmek amacıyla sıfırdan C# programlama dili kullanılarak geliştirilen açık kaynak kodlu bir proje. Emülatör, konsolun işletim sistemi çağrılarını, grafik sürücülerini ve bellek yönetimini bilgisayar bileşenlerinin anlayacağı komut dizilerine dönüştürüyor.
Karmaşık üç boyutlu grafiklere ve yoğun fizik hesaplamalarına sahip yapımlarda kare hızı henüz çok düşük kalırken, emülatör hafif grafikli oyunlarda daha yüksek performans sergiliyor. Daha güçlü masaüstü işlemciler ve harici ekran kartları üzerinde yapılan önceki testlerde, iki boyutlu grafik yapısına sahip Dead Cells ve Dreaming Sarah gibi yapımlar SharpEmu üzerinden başarıyla çalıştırıldı.
Astro’s Playroom gibi doğrudan PlayStation 5 donanım özelliklerine göre tasarlanmış bir oyunun Steam Deck üzerinde yükleme ekranına geçebilmesi, grafik boru hattı ve komut çeviricinin doğru çalıştığını doğruluyor.
Çoklu Mimari Desteği ve Kod Esnekliği
SharpEmu projesinin farklı yönlerinden biri de birden fazla işlemci mimarisine uyum sağlayabilen esnek kod yapısı. Yazılım temelde x86 mimarisine sahip standart bilgisayarları ve el konsollarını hedeflese de çeviri katmanları sayesinde farklı ekosistemlerde de yürütülebiliyor.
Yazılım, Apple Silicon işlemcili Mac bilgisayarlarda Apple’ın Rosetta 2 çeviri katmanından faydalanarak çalışıyor. ARM tabanlı Windows cihazlarda ise Microsoft’un Prism çeviri mimarisi üzerinden komut işleme süreçlerini tamamlıyor. Projenin C# diliyle yazılmış olması, ilerleyen dönemde kodların Android işletim sistemine derlenmesine de imkan veriyor.
Bu çoklu mimari desteği, PlayStation 5 emülasyonunun gelecekte yalnızca yüksek güçlü masaüstü bilgisayarlarla sınırlı kalmayacağını, ARM mimarisine sahip mobil cihazlarda da kendine yer bulabileceğini gösteriyor.
Steam Deck PS5 Emülatörü ve Donanım Sınırları
Valve tarafından geliştirilen Steam Deck, AMD’nin özel tasarlanmış APU mimarisinden güç alıyor. Cihaz içerisinde yer alan Zen 2 işlemci çekirdekleri ve RDNA 2 grafik birimi, PlayStation 4 neslindeki oyunları ve Nintendo Switch emülatörlerini oldukça akıcı biçimde çalıştırabiliyor.
Ancak PlayStation 5 donanımı, 8 çekirdekli yüksek frekanslı Zen 2 CPU, 10,28 TFLOPS gücünde RDNA 2 GPU ve özel veri kontrolcülerine sahip ultra hızlı bir NVMe SSD yapısı barındırıyor. Bir konsolu emüle etmek, sadece oyun kodunu çalıştırmak anlamına gelmiyor; konsolun tüm donanım bileşenlerinin davranışını yazılımsal olarak taklit etmeyi gerektiriyor.
Emülasyon yazılımları, konsolun her bir komutunu anlık olarak PC işlemcisinin anlayacağı dillere çevirdiği için hedef konsolun gücünün birkaç katı performans bütçesine ihtiyaç duyuyor. Steam Deck’in 15 Watt güç tüketim sınırı düşünüldüğünde, taşınabilir bir cihazda akıcı PS5 emülasyonunun sağlanması için kapsamlı optimizasyon çalışmalarına ihtiyaç bulunuyor.
PlayStation 5 Sistem Mimarisinin Emülasyondaki Rolü
PlayStation 5, FreeBSD tabanlı bir işletim sistemi kullanıyor. Konsolun yazılım katmanı, AMD’nin RDNA 2 grafik mimarisine doğrudan erişim sağlayan özel grafik kütüphanelerinden oluşuyor. Bu durum, masaüstü bilgisayarlarda veya el konsollarında kullanılan standart DirectX veya Vulkan grafik sürücülerinden farklılık gösteriyor.
SharpEmu gibi emülatörlerin karşılaştığı temel zorluklardan biri, konsolun özel grafik komutlarını bilgisayarların kullandığı Vulkan grafik kütüphanesine kayıpsız biçimde çevirebilmesi. Konsol oyunları donanıma doğrudan erişerek çalıştığı için, emülasyon yazılımının bellek zamanlamasını ve grafik önbelleklerini tam zamanlı olarak simüle etmesi gerekiyor.
Steam Deck üzerinde yapılan Astro’s Playroom denemesinde, konsolun bellek havuzunun ve grafik komut çizelgesinin SteamOS üzerindeki Linux sürücüleriyle iletişim kurması sağlandı. Bu iletişim, 0,6 FPS seviyesinde de olsa emülasyon mimarisinin donanım soyutlama katmanını geçtiğini doğruluyor.
Grafik Sürücüleri ve Vulkan Katmanı Optimizasyonu
Masaüstü ve taşınabilir bilgisayarlarda emülasyon performansını belirleyen ana unsurlardan biri grafik derleme sürücüleridir. Emülatör, konsolun işleme gölgelendiricilerini PC ekran kartlarının işleyebileceği Vulkan gölgelendirici kodlarına dönüştürmek zorunda kalır.
Bu dönüştürme işlemi sırasında oluşan gecikmeler, takılmalara ve kare hızı düşüşlerine yol açar. SharpEmu’nun Steam Deck üzerindeki düşük performansı da büyük oranda grafik komutlarının anlık olarak derlenmesi ve belleğe aktarılması sırasındaki gecikmelerden kaynaklanıyor.
Geliştiricilerin önümüzdeki dönemde yapacağı çalışmalar, gölgelendiricilerin önceden derlenmesi ve önbelleğe alınması süreçlerine odaklanacak. Önceden derlenmiş gölgelendirici altyapısı kurulduğunda, işlemci üzerindeki anlık yük hafifleyecek ve kare hızlarında artış elde edilebilecek.
Konsol Emülasyon Süreçleri ve Gelecek Beklentileri
Oyun dünyasındaki emülasyon geçmişi incelendiğinde, karmaşık konsol mimarilerinin çözülmesi zaman alan mühendislik süreçlerini kapsıyor. Geçmiş dönemde PlayStation 3 için geliştirilen RPCS3 ve son dönemde PlayStation 4 için geliştirilen emülatörler, ilk test aşamalarında düşük kare hızlarında çalışırken zamanla oynanabilir seviyelere geldi.
SharpEmu projesi de benzer bir gelişim çizgisi takip ediyor. Geliştirici ekibin Steam Deck üzerinde ulaştığı bu aşama, belleğin yönetimi, komut çizimi ve grafik arayüzlerinin doğru şekilde adreslendiğini ortaya koyuyor.
Önümüzdeki dönemde yazılım kodlarının optimize edilmesi, Vulkan ve OpenGL grafik kütüphanelerinin daha etkin kullanılması ve işlemci yükünün azaltılması hedefleniyor. Bu çalışmalar tamamlandıkça emülatörün öncelikle 2D oyunlarda, ardından 3D yapımlarda daha yüksek kare hızlarına ulaşması bekleniyor.