RetroArch
![]() | |
![]() RetroArchのインタフェース(XMB) | |
開発元 | Libretro |
---|---|
初版 | 2010年5月26日 (14年前) (2010-05-26) |
最新版 | 1.15.0 / 2023年3月11日 (16か月前) (2023-03-11) |
リポジトリ | github |
プログラミング 言語 | C, C++ |
対応OS | Windows, macOS, Linux, Unix-like, FreeBSD, iOS, Android, tvOS, webOS ニンテンドーゲームキューブ, Wii, Wii U, Nintendo Switch, ニンテンドー3DS, PSP, PS Vita, PlayStation 2, PlayStation 3, PlayStation 4, PlayStation Classic, Xbox, Xbox One, Xbox Series X/S |
プラットフォーム | IA-32 (x86), x86 (x64), ARM, AArch64, PowerPC, MIPS, Cell |
対応言語 | English, Mandarin, Spanish, German, French, Italian, 日本語, Korean, Dutch, Polish, Portuguese, Russian, Vietnamese, Turkish, Arabic, Greek, Persian, Hebrew, Asturian |
種別 | ゲームエミュレータ |
ライセンス | GNU GPL v3 |
公式サイト | www |
テンプレートを表示 |
Retroarch(レトロアーチ)はフリーかつオープンソースで開発されているゲームエミュレータ、メディアプレーヤー、ゲームエンジンである。
これまでに様々なプラットフォームに移植されており、Windows、macOS、Linux、iOS、Androidなどのプラットフォームにとどまらず、ゲームキューブ、Wii、Wii U、Switch、PS2、PS3、PS4、PS5、Xboxシリーズなどの据置型ゲーム機、3DS、PSP、PS Vitaなどの携帯ゲーム機、Web版など、多くのプラットフォームに移植されている。
概要
エミュレータ、ゲームエンジン、メディアプレーヤーや、その他のアプリケーションの起動が可能な、クロスプラットフォームのフロントエンドとして設計されている。また、高速、軽量、ポータブルで、依存関係のないように設計されたLibretro API[1][2]のリファレンス実装として作られたソフトウェアである。
オープンソースで自由な改変が認められているため、Raspberry Pi、ODROIDなどでも動作し、あらゆるデバイスで動作させることができる。また、RetroArchを組み込んだOSであるLakkaなども存在する。
特徴
コア
RetroArchで最も特徴的なのが、Libretro Coreといわれるエミュレータの機能を搭載したプログラム群を取り込むことで、多くの機種のソフトを動作させている点である。
入力、オーディオ、ビデオドライバー、さらにダイナミックレートコントロール[3]、オーディオフィルター、マルチパスシェーダー、ネットプレイ、ゲームプレイリワインディング、チートなどの他の洗練された機能を、動的ライブラリであるLibretro Coreに変換し、多くの機能を搭載している。
ユーザーインターフェース
CUIや、ゲームパッドに最適化されたGUIを複数搭載する。同じUI構造を複数のプラットフォーム間で採用し、一貫性を保っている。
ソニーのXMBのデザインを取り入れた「XMB」や、Nintendo Switchのデザインに近い「Ozone」、一部機種ではデフォルトとなっているシンプルな「RGUI」、そしてモバイルOSとの親和性の強い、Material Designを採用した「GLUI」が存在する。他にもPC向けのインターフェースとして、バージョン1.7.3のリリース前に発表された、QTベースの「WIMP」もある[4]。
スマートフォンなどのタッチスクリーンを備えるデバイスでは、ボタンオーバーレイによりタッチ操作だけでゲームを遊ぶことができる。
Libretroデータベース
Core、ゲーム、チートなどのリブレトロデータベースを備えている[5]。ディレクトリのファイルのハッシュサムを、既知のゲームのハッシュサムのデータベースと比較することにより、プレイリストを自動的に構築する[6]。ゲームのボックスアートのサムネイルも自動取得する。
主な機能
グラフィックス
高度なGPUシェーダーへの対応、効率的に活用される画像スケーリングアルゴリズム、複雑なCRTのエミュレーション、NTSCビデオアーティファクト、その他の効果を可能にするマルチパス後処理シェーダーパイプライン、タイミングの欠陥を滑らかにしながら、ビデオとオーディオを同期させるダイナミックレートコントロールなどの機能を備える。
また、OpenGLとVulkanの両方に対応している。
FFmpegのlibavcodecを使用したロスレスビデオ録画の機能を組み込んでいる。
ゲームパッド
Retropadと呼ばれるゲームパッド抽象化レイヤーを備え、ゲームパッドを接続した後にすぐ使えるようになっている。XInputコントローラーの自動設定は、RetroArch自体に組み込まれており、他のコントローラータイプは外部プロファイルとして利用できる。
ネットプレイ
GGPOに似たロールバック技術を使用し、既存のゲームでP2Pネットプレイを楽しむことができる[7]。
ユーザー体験
自動で途中セーブを行ったり、SRAM上書きの無効化などができる機能や、フレームごとにゲームプレイを巻き戻す機能を備える。また、トロフィーやバッジのロックを解除する、RetroAchievementsサービス、アチーブメントトラッキングに対応する[8]。
Run-Ahead機能により、セーブステートと早送りの両方を使用して、エミュレートされたシステムの入力遅延を軽減させられる。
他にも、外部の機械翻訳サービスを利用して、画面上のゲームテキストを翻訳できる機能を備える[9]。
その他
イコライザー、リバーブ、その他のエフェクトなどのオーディオDSPプラグインや、低入力とオーディオラグオプションを備える。
対応するエミュレータ
各プラットフォームに対応するLibretro Coreを、RetroArchアプリ内でダウンロード・インストールできる。
機種 | Core (エミュレータ) |
---|---|
3DO | 4DO |
Amstrad CPC | Caprice32 CrocoDS |
Arcade | MAME MESS FinalBurn Neo FinalBurn Alpha |
Atari 2600 | Stella |
Atari 5200 | a5200 Atari800 |
Atari 7800 | ProSystem |
Atari Falcon | Hatari |
Atari Jaguar | Virtual Jaguar |
Atari Lynx | Mednafen Handy |
Atari ST | Hatari |
ワンダースワン | Mednafen |
コレコビジョン | blueMSX Gearcoleco |
コモドール64 | VICE Frodo |
Commodore 128 | VICE |
Amiga | PUAE UAE4ARM |
Commodore CBM-II | VICE |
Commodore PET | VICE |
Commodore Plus/4 | VICE |
VIC-20 | VICE |
MS-DOS and compatible operating systems | DOSBox DOSBox-Pure DOSBox-SVN |
Electronika - BK-0010/BK-0011 | M |
Fairchild Channel F | FreeChaF |
Vectrex | vecx |
Handheld electronic game | GW |
Mac II | minivmac |
Odyssey² | O2EM |
Intellivision | FreeIntv |
Mega Duck | SameDuck |
MSX | fMSX blueMSX |
NEC PCエンジン / CD | Mednafen |
NEC TurboGrafx-16 / SuperGrafx | Mednafen |
NEC PC-8000 / PC-8800 | QUASI88 |
NEC PC-98 | Neko Project II Kai Neko Project II |
NEC PC-FX | Mednafen |
NEC TurboGrafx-CD | Mednafen |
Nintendo 3DS | Citra Citra 2018 |
Nintendo 64 | Mupen64Plus Mupen64Plus-Next ParaLLEl N64 |
Nintendo DS | DeSmuME DeSmuME 2015 melonDS |
ファミリーコンピュータNintendo Entertainment System | higan Emux FCEUmm Nestopia UE QuickNES Mesen |
ファミコンディスクシステム | FCEUmm Mesen Nestopia higan QuickNES |
ゲームボーイ/カラー | Emux Gambatte SameBoy TGB Dual higan Mesen-S |
ゲームボーイアドバンス | Mednafen gpSP Meteor mGBA VisualBoyAdvance |
ゲームキューブ | Dolphin |
ポケモンミニ | PokeMini |
スーパーファミコンSuper Nintendo Entertainment System | higan Mednafen bsnes Snes9x Mesen-S |
バーチャルボーイ | Mednafen |
Wii | Dolphin |
Palm OS | Mu |
Philips CD-i | SAME CDi Cdi 2015 |
32X | PicoDrive |
Dreamcast | Redream Flycast (formerly Reicast) |
ゲームギア | Genesis Plus GX PicoDrive SMS Plus GX Gearsystem |
セガマスターシステム | PicoDrive Genesis Plus GX SMS Plus GX Gearsystem |
メガCD/セガCD | Genesis Plus GX PicoDrive |
メガドライブ/ジェネシス | Genesis Plus GX BlastEm PicoDrive |
セガサターン | uoYabause Mednafen YabaSanshiro Kronos |
Sega ST-V | Kronos |
Sega VMU | VeMUlator |
SG-1000 | blueMSX Gearsystem |
Sharp X1 | X Millennium |
X68000 | PX68k |
ZX81 | EightyOne |
ZX Spectrum | Fuse |
PlayStation | Mednafen PCSX ReARMed DuckStation SwanStation |
PlayStation 2 | Play! PCSX2 |
PlayStation Portable | PPSSPP |
ネオジオポケット / カラー | Mednafen RACE |
Spectravideo | blueMSX |
3DO Interactive Multiplayer | Opera |
Thomson computers | Theodore |
Uzebox | Uzem |
光速船 | VecXGL |
Watara Supervision | Potator |
歴史
かつてはSSNESという名称で開発されており、プログラマーのNearによって開発されたLibretroの前身「Libsnes」に基づく[10]スーパーファミコン対応のエミュレータであった。
2010年にHans-Kristian Arntzen (themaister) が、GitHubで最初の変更をコミットして開発が始まった[11]。スーパーファミコンソフトを動作させるエミュレータ、bsnesのQtベースのインターフェース[12]の置き換えを指向していたが、のちにより多くの機種に対応するための「Core」を組み込む、マルチエミュレータに成長していった。
2012年4月21日、こうした変化を反映するために、SSNESは正式にRetroArchに改名された[13]。
バージョン1.0.0.0は2014年1月11日にリリースされ、当時から7つの異なるプラットフォームで利用可能だった[14]。
2016年2月16日、Vulkanのサポートを公式でのリリース開始と同時に実装した[15]。
同年11月27日、Libretroチームは、Lakka[注 1]と同時並行で、Patreonでバグ修正に協力する開発者に報奨金を提供し、マッチメイキングサーバーのコストをカバーすることを発表した[16]。
翌12月、セガと契約していたGoGamesが、SEGA ForeverプロジェクトにRetroArchを採用しようと、Libretroチームに接触した。ただ、最終的にはライセンスの意見の相違により、実現しなかった[17][18]。
2018年4月、「Run-Ahead」と呼ばれる入力遅延補償機能が追加された[19]。
2020年8月、悪意あるユーザーが信頼できるチームメンバーになりすまし、LibretroチームのbuildbotサーバーとGitHubアカウントにアクセスし、サーバーを初期化する事態が発生した[20]。
同年11月、PCSX2の Libretro Coreと組み合わせすることで、Xbox Series X/SがPlayStation 2ソフトの動作に対応した。なお当時は、PS2の開発元であったSIEのPlayStation 5ですら対応していなかった[21]。
2021年9月14日、Steamでリリースされた[22]。2年前の2019年7月から、Steamworksの機能をプラットフォームの統合と、Steamでの無料配布が計画されていた[23]。
評価
RetroArchを起動するだけで、多くのプラットフォームの数多くのゲームを遊べる点が評価されている[24][25][26][27]。
また、多機能である点も賞賛される一方で[28]、広範な数のオプションがあるため、設定が難しい点も指摘されている[24][25]。
Android向けアプリとしては、オーバーレイをカスタマイズできる点、拡張性、いくつかのUSBおよびBluetoothコントローラ・周辺機器との互換性、無料で広告がないという点が評価されている[27][29]。
Tyler LochはArs Technicaに寄稿し、RetroArchの「Run-Ahead」機能は「おそらくレトロゲームコミュニティがこれまでに見てきた経験の最大の改善」であると述べた[30]。
脚注
注釈
- ^ LibreELECベースのRetroArchを組み込んだOS。
出典
- ^ RetroArch, Libretro, (2023-06-08), https://github.com/libretro/RetroArch/blob/8a6f7e6fffce7e9ea5bffcb24a4a797fc9635781/libretro-common/include/libretro.h 2023年6月9日閲覧。
- ^ libretro/libretro-samples, Libretro, (2023-01-31), https://github.com/libretro/libretro-samples 2023年6月9日閲覧。
- ^ Hans-Kristian Arntzen (2012年12月12日). “Dynamic Rate Control for Retro Game Emulators (PDF)”. Libetro. 2023年6月9日閲覧。
- ^ (日本語) RetroArch 1.7.3 - New Desktop UI For PCs!, https://www.youtube.com/watch?v=hfuioGjCItw 2023年6月9日閲覧。
- ^ RetroArch Database, Libretro, (2023-06-08), https://github.com/libretro/libretro-database 2023年6月9日閲覧。
- ^ “Playlists and Thumbnails - Libretro Docs”. docs.libretro.com. 2023年6月9日閲覧。
- ^ “RetroArch”. retroarch.com. 2023年6月9日閲覧。
- ^ “RetroAchievements” (英語). retroachievements.org. 2023年6月9日閲覧。
- ^ “RetroArch 1.7.8 – AI Service – How To Set It Up – Libretro” (英語) (2019年9月14日). 2023年6月9日閲覧。
- ^ “Libsnes” (英語). GitHub. 2023年6月9日閲覧。
- ^ “SSNES · libretro/RetroArch@eed8e2b” (英語). GitHub. 2023年6月9日閲覧。
- ^ “SSNES - The SNES emulator that sucks less. / Community Contributions / Arch Linux Forums”. bbs.archlinux.org. 2023年6月9日閲覧。
- ^ “SSNES => RetroArch. · libretro/RetroArch@9ab51ad” (英語). GitHub. 2023年6月9日閲覧。
- ^ “RetroArch v1.0.0.0 release information – Libretro” (英語) (2014年1月11日). 2023年6月9日閲覧。
- ^ “Day 1 Vulkan support – Libretro” (英語) (2016年2月16日). 2023年6月9日閲覧。
- ^ “We are now on Patreon! – Libretro” (英語) (2016年11月27日). 2023年6月9日閲覧。
- ^ “Sega releases classic games on mobile, for free, but at what cost?” (英語). Eurogamer.net. (2017年6月21日). http://www.eurogamer.net/articles/2017-06-21-sega-releases-classic-games-on-mobile-for-free-but-at-what-cost 2023年6月9日閲覧。
- ^ “Sega defends Sega Forever launch after fan outcry” (英語). Eurogamer.net. (2017年6月26日). http://www.eurogamer.net/articles/2017-06-26-sega-defends-sega-forever-launch-after-fan-outcry 2023年6月9日閲覧。
- ^ Orland, Kyle (2018年4月19日). “Better than reality: New emulation tech lags less than original consoles” (英語). Ars Technica. 2023年6月9日閲覧。
- ^ “Hacker vandalised our buildbot and Github organization – Libretro” (英語) (2020年8月16日). 2023年6月9日閲覧。
- ^ Campbell, Ian Carlos (2020年11月30日). “Enterprising developers are emulating PS2 games on the Xbox Series S and X” (英語). The Verge. 2023年6月9日閲覧。
- ^ “Steam:RetroArch”. store.steampowered.com. 2023年6月9日閲覧。
- ^ Machkovech, Sam (2019年7月13日). “RetroArch will be Steam’s biggest emulation launch yet, coming July 30” (英語). Ars Technica. 2023年6月9日閲覧。
- ^ a b Pot, Justin (2017年7月5日). “How to Set Up RetroArch, The Ultimate All-In-One Retro Games Emulator” (英語). How-To Geek. 2023年6月9日閲覧。
- ^ a b “How to Set Up an All-In-One Retro Game Emulator with RetroArch” (英語). Lifehacker (2015年12月3日). 2023年6月9日閲覧。
- ^ “The Best Console Emulators (NES, SNES, Genesis, and More) | Page 2 | Digital Trends”. web.archive.org (2017年8月3日). 2023年6月9日閲覧。
- ^ a b “RetroArch Emulates Nearly Every Classic Gaming Console on Android” (英語). Lifehacker (2013年3月6日). 2023年6月9日閲覧。
- ^ Pot, Justin (2017年6月26日). “Eight Advanced RetroArch Features that Make Retro Gaming Great Again” (英語). How-To Geek. 2023年6月9日閲覧。
- ^ “RetroArch Emulates NES, Playstation, Gameboy Color/Advance And A Whole Lot More [Android]” (英語). MUO (2013年3月1日). 2023年6月9日閲覧。
- ^ Orland, Kyle (2018年4月19日). “Better than reality: New emulation tech lags less than original consoles” (英語). Ars Technica. 2023年6月9日閲覧。
関連項目
外部リンク
- 公式ウェブサイト
- GitHub
- YouTube (LibRetro)
- YouTube (RetroArch)
- YouTube (Lakka)