Перейти к содержанию

RetroArch

Материал из Википедии — свободной энциклопедии
RetroArch
Логотип программы RetroArch
Скриншот программы RetroArch
Главное меню RetroArch (интерфейс ozone)
Тип Эмулятор игровой приставки
Разработчик Libretro
Написана на C, C++
Операционные системы DOS, Windows, Linux, Emscripten, FreeBSD, NetBSD, OpenBSD, Haiku, Solaris, Raspberry Pi, Android, iOS, tvOS, macOS, Xbox Series X/S, Xbox One, Xbox 360, Xbox, PlayStation Vita, PlayStation TV, PlayStation Portable, PlayStation 2, PlayStation 3, PlayStation 4, Nintendo Switch, Nintendo Wii U, Nintendo Wii, Nintendo GameCube, Nintendo 3DS, Nintendo 2DS, RetroMini RS90, NES Classic Edition, SNES Classic Edition, Miyoo, RetroFW, OpenDingux
Языки интерфейса Английский, Японский, Французский, Испанский, Немецкий, Итальянский, Нидерландский, Португальский, Русский, Корейский, Китайский, Эсперанто, Польский, Вьетнамский, Арабский, Греческий, Словацкий, Персидский, Иврит, Астурийский, Финский, Индонезийский, Шведский, Украинский, Чешский, Каталанский
Дата выпуска 26 мая 2010 года
Аппаратные платформы IA-32, x86-64, ARM, AArch64, PowerPC, MIPS, Cell
Последняя версия
Репозиторий github.com/libretro/Retr…
git.libretro.com/libretr…
Состояние активное
Лицензия GPLv3
Сайт retroarch.com
Логотип Викисклада Медиафайлы на Викискладе

RetroArch — бесплатный кроссплатформенный интерфейс с открытым исходным кодом для эмуляторов, игровых движков, видеоигр, медиапроигрывателей и других устройств. Это эталонная реализация libretro API[2].

RetroArch запускает программы, преобразованные в динамические библиотеки, называемые ядрами libretro, используя несколько пользовательских интерфейсов, таких как интерфейс командной строки, несколько графических интерфейсов пользователя (GUI), оптимизированных для геймпадов (самый известный из них называется XMB, клон Sony XMB), нескольких драйверов ввода, аудио и видео, а также другие сложные функции, такие как динамическое управление скоростью, звуковые фильтры, многопроходные шейдеры, многопользовательская игра, перемотка игрового процесса, читы и т. д.

RetroArch был выпущен для многих платформ[3]. Он работает на нескольких операционных системах (Windows, macOS, Linux), игровых приставках (PlayStation 3, Xbox 360, Wii U и т. п.), портативных игровых консолях (PlayStation Vita, Nintendo 3DS и др.), смартфонах (Android, iOS и др.), одноплатных компьютерах (Raspberry Pi и др.) и даже в веб-браузерах[4] с помощью компилятора Emscripten.

Проект, ранее известный как SSNES, первоначально основанный на псевдониме программиста Near's libretro, предшественника libsnes[5], начал своё развитие в 2010 с Хансом-Кристианом ''themaister" Арнтценом, опубликовавшим первое изменение на GitHub[6]. Изначально проект задумывался, как замена интерфейса bsnes на основе Qt[7], но позже он стал поддерживать больше эмуляционных ядер. 21 апреля 2012 года SSNES был официально переименован в RetroArch[8]

Версия RetroArch 1.0.0.0 была выпущена 11 января 2014 года и в то время была доступна на семи разных платформах[9].

16 февраля 2016 года RetroArch стало одним из немногих приложений, реализовавших поддержку Vulkan API в день выхода API[10].

27 ноября 2016 года команда Libretro объявила, что наряду с Lakka (операционная система RetroArch на основе LibreELEC), RetroArch будет находиться на краудфандинговой платформе Patreon, чтобы вознаграждать разработчиков, которые исправляют определенные ошибки в программном обеспечении, и покрывать расходы на серверы подбора игроков[11].

В декабре 2016 года GoGames – компания, нанятая разработчиком и издателем видеоигр Sega – обратилась к разработчикам RetroArch с намерением использовать их программное обеспечение в их проекте SEGA Forever, но в конечном итоге сотрудничество не увенчалось успехом из-за лицензионных разногласий.

В августе 2020 года кто-то, выдававший себя за доверенного члена команды, получил доступ к серверу buildbot и учетной записи GitHub для организации Libretro, что привело к вандализму и очисткам сервера[12].

В ноябре 2020 года RetroArch при помощи ядра PCSX2 Libretro смогла реализовать эмуляцию PlayStation 2 на Xbox Series X/S, чего на тот момент времени не могла сделать даже собственная PlayStation 5 от Sony.

14 сентября 2021 года RetroArch вышел в Steam[13].

Особенности

[править | править код]

Его основные функции включают в себя:

Эмулируемые системы

[править | править код]

RetroArch работает с любым ядром Libretro. RetroArch доступен на многих платформах, но доступность конкретного ядра зависит от платформы.

Ниже приведена (неполная) таблица систем, доступных на RetroArch, и на каких эмуляторах основываются ядра:

Система Эмулятор Лицензия
Amstrad - CPC Caprice32 GPLv2
CrocoDS MIT
Amstrad - GX4000 Caprice32 GPLv2
Apple II AppleWin GPLv2
Аркада DICE GPLv3
FB Alpha 2012 Некоммерческая
FB Alpha 2012 CPS-1 Некоммерческая
FB Alpha 2012 CPS-2 Некоммерческая
FB Alpha 2012 CPS-3 Некоммерческая
FB Alpha 2012 Neo Geo Некоммерческая
FinalBurn Neo Некоммерческая
MAME GPLv2+
MAME 2000 MAME
MAME 2003 MAME
MAME 2003 Midway MAME
MAME 2003-Plus MAME некоммерческая
MAME 2010 MAME
Atari - 2600 Stella GPLv2
Stella 2014 GPLv2
Stella 2023 GPLv2
Atari - 400 Atari800 GPLv2
Atari - 800 Atari800 GPLv2
Atari - 600XL Atari800 GPLv2
Atari - 800XL Atari800 GPLv2
Atari - 130XE Atari800 GPLv2
Atari - 5200 a5200 GPLv2
Atari800 GPLv2
Atari - 7800 ProSystem GPLv2
Atari - Jaguar Virtual Jaguar GPLv3
Atari - Lynx Beetle Lynx Zlib, GPLv2
Handy Zlib
Holani GPLv3
Atari - ST Hatari GPLv2
Atari - STE Hatari GPLv2
Atari - TT Hatari GPLv2
Atari - Falcon Hatari GPLv2
Bandai - Tamagotchi P1 TamaLIBretro GPL-2.0
Bandai - WonderSwan Beetle Wonderswan GPLv2
Bandai - WonderSwan Color Beetle Wonderswan GPLv2
Coleco - ColecoVision blueMSX GPLv2
Gearcoleco GPLv3
JollyCV BSD-3-Clause, MIT
CreatiVision JollyCV BSD-3-Clause, MIT
My Vision JollyCV BSD-3-Clause, MIT
Commodore - Amiga PUAE GPLv2
PUAE 2021 GPLv2
Commodore - C128 VICE x128 GPLv2
Commodore - C64 VICE x64 GPLv2
VICE x64sc GPLv2
Commodore - C64 SuperCPU VICE xscpu64 GPLv2
Commodore - CBM-II 5x0 VICE xcbm5x0 GPLv2
Commodore - CBM-II 6x0 VICE xcbm2 GPLv2
Commodore - CBM-II 7x0 VICE xcbm2 GPLv2
Commodore - PET VICE xpet GPLv2
Commodore - PLUS/4 VICE xplus4 GPLv2
Commodore - VIC-20 VICE xvic GPLv2
DOS DOSBox-core GPLv2
DOSBox-Pure GPLv2
DOSBox-SVN GPLv2
Электроника - БК-0010 M BSD
Электроника - БК-0011 M BSD
Enterprise - 64 ep128emu GPLv2
Enterprise - 128 ep128emu GPLv2
Fairchild - Channel F FreeChaF GPLv3
GCE - Vectrex vecx GPLv3
Портативные игровые системы GW Zlib
Mac II minivmac GPLv2
Magnavox - Odyssey 2 O2EM Artistic License
Philips - Videopac+ O2EM Artistic License
Mattel - Intellivision FreeIntv GPLv3
Mega Duck SameDuck MIT
Cougar Boy SameDuck MIT
Microsoft - MSX blueMSX GPLv2
fMSX Некоммерческая
NEC - PC Engine Beetle PCE GPLv2
Beetle PCE FAST GPLv2
Geargrafx GPLv3
NEC - PC Engine CD Beetle PCE GPLv2
Beetle PCE FAST GPLv2
Geargrafx GPLv3
NEC - PC Engine SuperGrafx Beetle PCE GPLv2
Beetle SuperGrafx GPLv2
Geargrafx GPLv3
NEC - PC-8000 QUASI88 BSD 3-Clause, MAME некоммерческая
NEC - PC-8800 series QUASI88 BSD 3-Clause, MAME некоммерческая
NEC - PC-98 Neko Project II MIT
Neko Project II Kai MIT
NEC - PC-FX Beetle PC-FX GPLv2
Nintendo - 3DS Azahar GPLv2+
Citra GPLv2+
Citra 2018 GPLv2+
Nintendo - DS DeSmuME GPLv2
DeSmuME 2015 GPLv2
melonDS GPLv3
melonDS DS GPLv3+
NooDS GPLv3
SkyEmu MIT
Nintendo - Game Boy DoubleCherryGB GPLv2
Gambatte GPLv2
Gearboy GPLv3
Mesen-S GPLv3
SameBoy MIT
SkyEmu MIT
TGB Dual GPLv2
Nintendo - Game Boy Color DoubleCherryGB GPLv2
Gambatte GPLv2
Gearboy GPLv3
Mesen-S GPLv3
SameBoy MIT
TGB Dual GPLv2
Nintendo - Game Boy Advance gpSP GPLv2
mGBA MPLv2.0
SkyEmu MIT
VBA Next GPLv2
VBA-M GPLv2
Nintendo - GameCube Dolphin GPLv2+
Nintendo - Wii Dolphin GPLv2+
Nintendo - NES / Famicom FCEUmm GPLv2
Mesen GPLv3
Nestopia GPLv2
QuickNES LGPLv2.1+
Nintendo - Nintendo 64 Mupen64Plus-Next GPLv2
ParaLLEl N64 GPLv2
Nintendo - Pokémon Mini PokeMini GPLv3
Nintendo - SNES / SFC Beetle Supafaust GPLv2+
bsnes GPLv3
bsnes 2014 Accuracy GPLv3
bsnes 2014 Balanced GPLv3
bsnes 2014 Performance GPLv3
bsnes-hd beta GPLv3
bsnes-jg GPLv3
bsnes-mercury Accuracy GPLv3
bsnes-mercury Balanced GPLv3
bsnes-mercury Performance GPLv3
Mesen-S GPLv3
Snes9x Некоммерческая
Snes9x 2002 Некоммерческая
Snes9x 2005 Некоммерческая
Snes9x 2005 Plus Некоммерческая
Snes9x 2010 Некоммерческая
Nintendo - Virtual Boy Beetle VB GPLv2
Palm OS Mu CC BY-NC 3.0 US (Некоммерческая)
Philips - CDi CDi 2015 GPLv2+
SAME CDi GPLv2+
Philips - P2000T M2000 GPLv3
Sega - Dreamcast Flycast GPLv2
Sega - Naomi Flycast GPLv2
Sega - Master System Gearsystem GPLv3
Genesis Plus GX Некоммерческая
Genesis Plus GX Wide Некоммерческая
PicoDrive MAME
SMS Plus GX GPLv2
Sega - Game Gear Gearsystem GPLv3
Genesis Plus GX Некоммерческая
Genesis Plus GX Wide Некоммерческая
PicoDrive MAME
SMS Plus GX GPLv2
Sega - Mega Drive BlastEm GPLv3
ClownMDEmu AGPLv3
Genesis Plus GX Некоммерческая
Genesis Plus GX Wide Некоммерческая
PicoDrive MAME
Sega - Mega-CD ClownMDEmu AGPLv3
Genesis Plus GX Некоммерческая
Genesis Plus GX Wide Некоммерческая
PicoDrive MAME
Sega - 32X PicoDrive MAME
Sega - SG-1000 blueMSX GPLv2
Gearsystem GPLv3
Sega - Saturn Beetle Saturn GPLv2
Kronos GPLv2
YabaSanshiro GPLv2
Yabause GPLv2
Sega - ST-V Kronos GPLv2
Sharp - X1 X Millennium BSD
Sharp - X68000 PX68k Кастомизированная некоммерческая
Sinclair - ZX81 EightyOne GPLv3
Sinclair - ZX Spectrum Fuse GPLv3
SNK - Neo Geo AES/MVS Geolith BSD-3-Clause, MIT
SNK - Neo Geo CD NeoCD LGPLv3
SNK - Neo Geo Pocket Beetle NeoPop GPLv2
RACE GPLv2
SNK - Neo Geo Pocket Color Beetle NeoPop GPLv2
RACE GPLv2
Sony - PlayStation Beetle PSX GPLv2
Beetle PSX HW GPLv2
PCSX ReARMed GPLv2
SwanStation GPLv3
Sony - PlayStation 2 LRPS2 GPL
Sony - PlayStation Portable PPSSPP GPLv2
SVI blueMSX GPLv2
Texas Instruments TI-83 Numero GPLv2
The 3DO Company - 3DO Opera LGPL / Некоммерческая
Thomson - MO Theodore GPLv3
Thomson - TO Theodore GPLv3
Uzebox Uzem MIT
Watara - Supervision Potator Общественное достояние

Ниже приведен (неполный) список вещей, которые не вписываются в приведенный выше список, например, отдельные игры, библиотеки или языки программирования.

Arduboy Arduos
Bomberman Mr. Boom
Cave Story NXEngine
ChaiScript ChaiLove
CHIP-8 JAXE
Dinothawr Dinothawr
Doom PrBoom
Doom 3 boom3

boom 3 xp

FFmpeg FFmpeg
Flashback REminiscene
Gong Gong
Java ME SquirrelJME
Jump 'n Bump Jump 'n Bump
LowRes NX LowRes NX
Lua Engine Lutro
Minecraft Craft
OutRun Cannonball
PICO-8 Retro8
PocketCDG PocketCDG
Quake TyrQuake
Quake II vitaQuake 2
Rick Dangerous XRick
RPG Maker 2000/2003 EasyRPG
ScummVM ScummVM
The Powder Toy The Powder Toy
TIC-80 TIC-80
Tomb Raider OpenLara
VaporSpec VaporSpec
VeMUlator VeMUlator
WASM-4 WASM-4
Wolfenstein 3D ECWolf
  • RetroArch хвалят за количество систем, которыми он может управлять через единый интерфейс[17][18].
  • Его критиковали за сложность настройки из-за большого количества опций, доступных пользователю, но в то же время хвалили за достаточно продвинутую функциональность.
  • RetroArch на Android хвалили за то, что сенсорные кнопки можно настраивать, за расширяемость поддерживаемых им ядер libretro, за поддержку различных периферийных устройств, таких как контроллеры USB и Bluetooth, к тому же приложение бесплатное и не имеет рекламы.
  • Кайл Орланд, пишущий для Ars Technica, сказал, что режим RetroArch «Run-Ahead» является «возможно, самым большим улучшением, которое когда-либо видело сообщество ретро-игр»[19].

Примечания

[править | править код]
  1. Release 1.22.2 — 2025.
  2. libretro/RetroArch (англ.). Дата обращения: 27 мая 2022. Архивировано 21 марта 2022 года.
  3. Platforms — RetroArch (англ.). Дата обращения: 27 мая 2022. Архивировано 28 октября 2015 года.
  4. RetroArch Web Player (англ.). Дата обращения: 27 мая 2022. Архивировано 25 мая 2022 года.
  5. Libsnes (англ.). Дата обращения: 27 мая 2022. Архивировано 18 октября 2020 года.
  6. SSNES - libretro/RetroArch (англ.). Дата обращения: 27 мая 2022. Архивировано 10 декабря 2021 года.
  7. SSNES - The SNES emulator that sucks less. (англ.). Дата обращения: 27 мая 2022. Архивировано 13 сентября 2014 года.
  8. SSNES => RetroArch. (англ.). Дата обращения: 27 мая 2022. Архивировано 10 декабря 2021 года.
  9. RetroArch v1.0.0.0 release information (англ.). Дата обращения: 27 мая 2022. Архивировано 15 января 2014 года.
  10. Day 1 Vulkan support (англ.). Дата обращения: 27 мая 2022. Архивировано 19 февраля 2016 года.
  11. We are now on Patreon! (англ.). Дата обращения: 27 мая 2022. Архивировано 3 августа 2017 года.
  12. Hacker vandalised our buildbot and Github organization (англ.). Дата обращения: 27 мая 2022. Архивировано 16 августа 2020 года.
  13. RetroArch finally released on Steam! (англ.). Дата обращения: 27 мая 2022. Архивировано 27 мая 2022 года.
  14. Netplay - RetroArch (англ.). Дата обращения: 28 мая 2022. Архивировано 30 мая 2022 года.
  15. RetroArch Playlist Scanner (англ.). Дата обращения: 28 мая 2022. Архивировано 26 декабря 2017 года.
  16. libretro/libretro-database (англ.). Дата обращения: 28 мая 2022. Архивировано 10 июня 2018 года.
  17. Как настроить RetroArch, универсальный эмулятор ретро-игр.
  18. Как пользоваться RetroArch — эмулятором Dendy, Sega Mega Drive и других старых консолей.
  19. Better than reality: New emulation tech lags less than original consoles (англ.). Дата обращения: 29 мая 2022. Архивировано 19 апреля 2018 года.