PCSX2

PCSX2, yüksek düzeyde uyumluluk ve işlevsellik ile çok çeşitli PlayStation 2 video oyunlarını Windows, Linux ve MacOS için ücretsiz ve açık kaynaklı bir PlayStation 2 öyküncüsüdür. PCSX2, PlayStation 2'deki orijinal oyun deneyimini yakından yansıtabilse de, 8192×8192'ye kadar özel çözünürlükleri kullanma, kenar yumuşatma ve doku filtreleme gibi geleneksel bir PlayStation 2'deki oynanışa göre bir dizi iyileştirmeyi destekler.

Arka fon 
PCSX2, önceki projesi PCSX (PlayStation 1 emulatoru) gibi, birkaç işlevi çekirdek emülatörden ayıran bir PSEmu Pro spesifik eklenti mimarisine dayanmaktadır. Bunlar grafikler, ses, giriş kontrolleri, CD/DVD sürücüsü ve USB ve FireWire (i.LINK) bağlantı noktalarıdır. Farklı eklentiler hem uyumluluk hem de performans açısından farklı sonuçlar doğurabilir. Ek olarak, PCSX2 , telif hakkıyla ilgili yasal sorunlar nedeniyle geliştiricilerden indirilemeyen orijinal bir PS2 BIOS kopyası gerektirir . Eylül 2016'dan beri PCSX2, PlayStation oyunlarıyla kısmen uyumludur.

PS2 emülasyonundaki ana darboğaz , PC x86 mimarisinde Emotion Engine çoklu işlemcisini taklit etmektir. Her işlemci bağımsız olarak iyi bir şekilde taklit edilebilse de, bunları doğru bir şekilde senkronize etmek ve konsolun zamanlamasını taklit etmek zordur.

Gelişim 
PCSX2'nin geliştirilmesine 2001 yılında, PlayStation emülatörü PCSX-Reloaded için programcılar olan Linuzappz ve Shadow adlarını kullanan programcılar tarafından başlandı . Diğer programcılar daha sonra ekibe katıldı ve sonunda bazı PS2 oyunlarını yükleme ekranına getirebildiler. Ekip daha sonra PlayStation 2'nin BIOS'unu taklit etmek gibi zor bir görev üzerinde çalışmaya başladı; yavaş ve grafiksel olarak bozuk olmasına rağmen çalıştırmayı başardılar. Sürüm 0.9.1 Temmuz 2006'da yayınlandı.

2007'den 2011'e kadar geliştiriciler Netplay ve hız iyileştirmeleri üzerinde çalıştı. PCSX2 0.9.8, Mayıs 2011'de piyasaya sürüldü ve Linux ve daha yeni Windows işletim sistemleri için uyumluluğu artıran wxWidgets ile yazılmış, elden geçirilmiş bir GUI , daha iyi uyumluluk sağlayan yeni bir VU yeniden derleyicisinin eklenmesi, bir hafıza kartı düzenleyicisi, SPU2'nin elden geçirilmesini içeriyordu. -X ses eklentisi ve çok sayıda başka iyileştirme içeriyordu.

2022'de PCSX2, Vulkan API için destek ekledi. PCSX2, Android için bir PlayStation 2 öykünücüsü olan AetherSX2 için temel olarak kullanıldı.

Özellikler 
PCSX2, kaydetme durumlarını ve dinamik yeniden derlemeyi (JIT) destekler. GSdx eklentisini kullanarak Full HD oyun kaydı için de destek vardır. Oyun hızlarını artırma/azaltma, sınırsız hafıza kartı kullanma ve yerel işletim sistemi tarafından desteklenen herhangi bir gamepad denetleyicisini kullanma gibi seçenekler de mevcuttur. Hile kodları, PNACH yama dosyaları kullanılarak desteklenir.

Eklentiler 
PCSX2 , taklit edilen PlayStation 2 donanımının ayrı bileşenleri (alt sistemleri) arasındaki geliştirme çabalarını modülerleştirmenin bir aracı olarak eklentileri kullanır . Örneğin, PCSX2 tarafından görüntüleri ekrana işlemek ve PlayStation 2'nin grafik donanımını taklit etmek için video eklentileri kullanılırken, ses eklentileri PlayStation 2'nin ses donanımına öykünür. Bu sadece farklı geliştiricilerin odaklanmasına izin vermekle kalmaz. PlayStation 2 donanımının bir yönü üzerindeki çabaları, bu aynı zamanda bir eklenti ile iyi sonuçlar vermeyen bir sistem yapılandırmasına sahip olan kullanıcıların daha iyi sonuçlar alıp almadıklarını görmek için başka bir eklentiyi denemelerini sağlar.

Birkaç eklentinin listesi aşağıdadır:

V1.7.0-dev-1420'den itibaren PCSX2, eklenti kavramını ortadan kaldırarak tüm işlevleri çekirdek öykünücüde birleştirmiştir.

Birleştirilen eklentilerin listesi aşağıda listelenmiştir:

 GS: GSDX
 SPU: SPU2
 PAD: Lillypad (Windows) | Onepad (Linux)
 DEV9: Dev9Gigaherz
 CDVD: CDVDGigaherz

Grafiksel İyileştirmeler (GSdx Eklentisi) 
GSdx eklentisi, orijinal PlayStation 2 donanımına göre çeşitli görüntü kalitesi iyileştirmeleri sunar, örneğin:

 Dahili çözünürlüğü artırma seçeneği (yalnızca donanım modunda)
 Kenar yumuşatma: FXAA , MSAA (yalnızca donanım modunda ve daha sonra 1.5 geliştirme sırasında kaldırıldı) ve Edge-AA (yalnızca yazılım modunda)
 İşleme Sonrası Piksel Gölgelendiriciler
 Mipmapping (Jak ve Daxter serisi gibi bazı oyunların doğru çalışması için gereklidir)
 Bilineer filtreleme ve Trilinear filtreleme (yalnızca OpenGL)
 Anizotropik filtreleme
 Geniş ekran hileleri

Sistem gereksinimleri 
Donanım gereksinimleri büyük ölçüde oyuna bağlıdır. Öykünmenin zorlu doğası nedeniyle, PCSX2'nin modern orta ve üst düzey donanımlarla iyi performans gösterme olasılığı çok daha yüksektir ve alt uç sistemlerin tam performanstan daha az deneyim yaşaması olasıdır. Çoğu durumda performans darboğazı GPU'dan ziyade CPU'dur . Bu, özellikle öykünme için yalnızca CPU'nun kullanıldığı yazılım modunda geçerlidir. Donanım modunda, GPU grafikleri taklit eder, ancak dahili çözünürlük çok yüksek ayarlanmışsa yine de bir darboğaz olabilir. Bazı oyunlar, optimize edilmemiş grafik kodu veya zayıf grafik nedeniyle daha yavaş çalışabilir.Bazı oyunlar, optimize edilmemiş grafik kodu veya zayıf video kartları . Bilgisayar donanımı zamanla ilerlemeye devam ettikçe, PCSX2 ile ilgili performans sorunları olasılığı buna karşılık gelen bir düşüş yaşadı.

Değerlendirme 
PCSX2 çok iyi karşılandı. Geek.com'dan Matthew Humphries bunu "etkileyici bir eser" olarak nitelendirdi. PC World'den Alex Garnett, PCSX2'yi kurmanın zorluğunu eleştirdi ancak onu "şaheser" olarak nitelendirdi. Micro Mart'tan David Hayward da karmaşıklığı eleştirmesine rağmen, aynı zamanda "teknik olarak şaşırtıcı" olarak nitelendirdi. In.com'dan Sriram Gurunathan, PCSX2'yi "tartışmasız en popüler emülatör" olarak tanımladı ve onu sitenin en iyi beş emülatöründen biri olarak adlandırdı. Digital Trends'ten Brandon Widder , Best Emülatörler makalesine PCSX2'yi dahil etti.Tom's Guide , PC'ler için En İyi PlayStation Emülatörleri makalesinde PCSX2'den bahsetti ve "Konu kararlı, oynanabilir Playstation 2 emülasyonu olduğunda, PCSX2 şu anda şehirdeki en iyi oyundur" dedi.

Ayrıca bakınız 
 RPCS3
 PCSX-Reloaded

Kaynakça 

Özgür emülatörler
C++ ile programlanmış ücretsiz yazılımlar
Linux emülatörleri
MacOS emülatörleri
PlayStation 2 emülatörleri
Qt kullanan yazılımlar
WxWidgets kullanan yazılımlar
Windows emülatörleri