# RetroArch
RetroArch, öykünücüler, oyun motorları, video oyunları, medya oynatıcılar ve diğer uygulamalar için özgür ve açık kaynaklı, platformlar arası bir ön uçtur. Hızlı, hafif, taşınabilir ve bağımlılıklar olmadan tasarlanmış libretro API 'nin referans uygulamasıdır. GNU GPLv3 altında lisanslanmıştır.
RetroArch, komut satırı arabirimi, gamepad'ler için optimize edilmiş birkaç grafik kullanıcı arabirimi (GUI) (en ünlüsü Sony'nin XMB'sinin bir klonu olan XMB olarak adlandırılır) gibi birkaç kullanıcı arabirimi kullanarak libretro çekirdekleri adı verilen dinamik kitaplıklara dönüştürülmüş programları çalıştırır. giriş, ses ve video sürücüleri, ayrıca dinamik hız kontrolü, ses filtreleri, çoklu geçiş gölgelendiriciler, netplay, oyun geri sarma, hileler vb. gibi diğer gelişmiş özellikler.
RetroArch birçok platforma uyarlanmıştır. Çeşitli PC işletim sistemlerinde (Windows, macOS, Linux, ev konsollarında (PlayStation 4, Xbox Series X, Wii U, vb.), el konsollarında (PlayStation Vita, Nintendo Switch, vb.), akıllı telefonlar (Android, iOS, vb.), tek kartlı bilgisayarlar (Raspberry Pi, ODROID, vb.) ve hatta web tarayıcılarında Emscripten derleyicisini kullanarak.


## Tarih.
Eskiden SSNES olarak bilinen, başlangıçta takma adlı programcı Near'ın "libretro" selefi "libsnes'ine dayanan", geliştirmeye 2010 yılında Hans-Kristian "themaister" Arntzen'in GitHub'da ilk değişikliği yapmasıyla başladı. bsnes'in Qt -tabanlı arabiriminin yerini alması amaçlandı, ancak daha fazla öykünme "çekirdeğini" destekleyecek şekilde büyüdü. 21 Nisan 2012'de SSNES, bu yön değişikliğini yansıtmak için resmi olarak RetroArch olarak yeniden adlandırıldı.
RetroArch'ın 1.0.0.0 sürümü 11 Ocak 2014'te yayınlandı ve o sırada yedi farklı platformda mevcuttu.
16 Şubat 2016'da RetroArch, Vulkan grafik API'sini destekleyen ilk uygulamalardan biri oldu ve bunu API'nin resmi çıkış günüyle aynı gün yaptı.
27 Kasım 2016'da Libretro Ekibi, Lakka (LibreELEC tabanlı RetroArch işletim sistemi) ile birlikte RetroArch'ın, belirli yazılım hatalarını düzelten geliştiricilere ödül sağlamak ve çöpçatanlık sunucularının maliyetlerini karşılamak için Patreon kitle fonlaması platformunda olacağını duyurdu.
Aralık 2016'da, video oyunu geliştiricisi ve yayıncısı Sega ile sözleşmeli bir şirket olan GoGames, yazılımlarını SEGA Forever projelerinde kullanmak niyetiyle RetroArch geliştiricilerine başvurdu ancak nihayetinde işbirliği, lisans anlaşmazlıkları nedeniyle meyve vermedi.
Nisan 2018'de "Run-Ahead" adlı bir giriş gecikmesi telafisi özelliği eklendi.
Libretro Ekibi, Temmuz 2019'da Steamworks özelliklerini platforma entegre ederek RetroArch'ı Steam'de ücretsiz olarak indirmeyi planladı. O sırada platformda piyasaya sürülen ilk büyük özel öykünme başlığı olacaktı.
Ağustos 2020'de, ekibin güvenilir bir üyesini taklit eden biri libretro organizasyonu için buildbot sunucusuna ve GitHub hesabına erişerek vandalizme ve sunucu silme işlemlerine neden oldu.
Kasım 2020'de RetroArch, bir PCSX2 libretro çekirdeğiyle birlikte, Xbox Series X ve Series S'nin PlayStation 2'yi taklit etmesine izin verdi, bu, Sony'nin kendi PlayStation 5'inin o sırada yapamadığı bir şeydi.
14 Eylül 2021'de RetroArch, Steam'de yayımlandı.


## Özellikler.
Başlıca özellikleri şunlardır:
  - Gelişmiş GPU gölgelendirici desteği - Görüntü ölçeklendirme algoritmalarının verimli kullanımına, karmaşık CRT, NTSC video yapıtlarının ve diğer efektlerin emülasyonuna izin veren çok geçişli bir post-processing gölgelendirici boru hattı 
  - Zamanlama kusurlarını düzeltirken video ve sesi senkronize etmek için Dinamik Hız Kontrolü  
  - FFmpeg kaydı - FFmpeg'in libavcodec'ini kullanarak kayıpsız video kaydı için yerleşik destek 
  - Retropad adı verilen Gamepad soyutlama katmanı 
  - Oyun kumandası otomatik yapılandırması - Oyun kumandalarını taktıktan sonra kullanıcıdan ek girdi gerektirmez 
  - GGPO'ya benzer bir geri alma tekniği kullanan eşler arası ağ oyunu  
  - Bir ekolayzır, yankı ve diğer efektler gibi ses DSP eklentileri 
  - Gelişmiş kayıt durumu özellikleri - Otomatik kayıt durumu yükleme, SRAM üzerine yazmayı devre dışı bırakma vb. 
  - Kare kare oyun geri sarma 
  - Akıllı telefonlar gibi dokunmatik ekranlı cihazlar için düğme yer paylaşımları 
  - Oyun kutusu sanatının küçük resimleri 
  - Düşük giriş ve ses gecikmesi seçenekleri 
  - Oyunlar/ROM'lar için dizinleri tarayarak kategorize edilmiş oynatma listelerini otomatik olarak oluşturun 
  - CLI, XMB (oyun kumandası için optimize edilmiştir), GLUI /MaterialUI (dokunmatik cihazlar için optimize edilmiştir), RGUI ve Ozone (her yerde kullanılabilir) 
  - Oyun ROM tarayıcısı - Bir dizinin dosyalarının hashsum'larını bilinen iyi oyun kopyalarının hashsum veritabanlarıyla karşılaştırarak çalma listelerini otomatik olarak oluşturur 
  - Çekirdekler, oyunlar, hileler vb. için Libretro veri tabanı  
  - OpenGL ve Vulkan API desteği 
  - Run-Ahead - Hem kayıt durumlarını hem de hızlı ileri sarmayı kullanarak benzetilmiş sistemlerin giriş gecikmesini gizleyin 
  - Başarı izleme - Kupa ve rozetlerin kilidini açmak için RetroAchievements hizmetiyle entegrasyon 
  - AI Hizmeti - Ekrandaki oyun metnini çevirmek için makine çevirisi harici hizmetlerini kullanır.


## Desteklenen sistemler.
RetroArch herhangi bir libretro çekirdeğini çalıştırabilir. RetroArch birçok platform için kullanılabilirken, belirli bir çekirdeğin kullanılabilirliği platforma göre değişir.
Aşağıda, hangi sistemlerin RetroArch için kullanılabilir olduğuna ve çekirdeğin hangi projeyi temel aldığına dair ayrıntılı olmayan bir tablo bulunmaktadır:
Aşağıda, bireysel oyunlar, kitaplıklar veya programlama dilleri gibi yukarıdaki listeye uymayan şeylerin kapsamlı olmayan bir listesi bulunmaktadır.


## Tepkiler.
RetroArch, tek bir arayüz altında oynayabileceği sistem ve oyun sayısıyla övüldü.
Kullanıcıya sunulan çok sayıda seçenek nedeniyle yapılandırmanın ne kadar zor olduğu konusunda eleştirildi ve aynı zamanda sahip olduğu daha gelişmiş özellikler nedeniyle övüldü.
Android'de, uygulamanın ücretsiz olması ve reklam içermemesinin yanı sıra, bindirmelerin özelleştirilebilmesi, desteklediği libretro çekirdeklerinin genişletilebilirliği, çeşitli USB ve Bluetooth denetleyici çevre birimleriyle uyumluluğu nedeniyle övüldü.
Ars Technica için yazan Tyler Loch, RetroArch'ın "Run-Ahead" özelliğinin "retro oyun topluluğunun şimdiye kadar gördüğü deneyimdeki tartışmasız en büyük gelişme" olduğunu söyledi.