Retroarch(レトロアーチ)はフリーかつオープンソースで開発されているゲームエミュレータメディアプレーヤーゲームエンジンである。

RetroArch
RetroArchのインタフェース(XMB
開発元Libretro
初版2010年5月26日 (14年前) (2010-05-26)
最新版
1.15.0 / 2023年3月11日 (15か月前) (2023-03-11)
リポジトリgithub.com/libretro/RetroArch
プログラミング
言語
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.com, www.libretro.com
テンプレートを表示

これまでに様々なプラットフォームに移植されており、WindowsmacOSLinuxiOSAndroidなどのプラットフォームにとどまらず、ゲームキューブWiiWii USwitchPS2PS3PS4PS5Xboxシリーズなどの据置型ゲーム機3DSPSPPS Vitaなどの携帯ゲーム機、Web版など、多くのプラットフォームに移植されている。

概要

編集

エミュレータ、ゲームエンジン、メディアプレーヤーや、その他のアプリケーションの起動が可能な、クロスプラットフォームフロントエンドとして設計されている。また、高速、軽量、ポータブルで、依存関係のないように設計されたLibretro API[1][2]リファレンス実装として作られたソフトウェアである。

オープンソースで自由な改変が認められているため、Raspberry PiODROIDなどでも動作し、あらゆるデバイスで動作させることができる。また、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ビデオアーティファクト、その他の効果を可能にするマルチパス後処理シェーダーパイプライン、タイミングの欠陥を滑らかにしながら、ビデオとオーディオを同期させるダイナミックレートコントロールなどの機能を備える。

また、OpenGLVulkanの両方に対応している。

FFmpegのlibavcodecを使用したロスレスビデオ録画の機能を組み込んでいる。

ゲームパッド

編集

Retropadと呼ばれるゲームパッド抽象化レイヤーを備え、ゲームパッドを接続した後にすぐ使えるようになっている。XInputコントローラーの自動設定は、RetroArch自体に組み込まれており、他のコントローラータイプは外部プロファイルとして利用できる。

ネットプレイ

編集

GGPOに似たロールバック技術を使用し、既存のゲームでP2Pネットプレイを楽しむことができる[7]

ユーザー体験

編集

自動で途中セーブを行ったり、SRAM上書きの無効化などができる機能や、フレームごとにゲームプレイを巻き戻す機能を備える。また、トロフィーやバッジのロックを解除する、RetroAchievementsサービス、アチーブメントトラッキングに対応する[8]

Run-Ahead機能により、セーブステートと早送りの両方を使用して、エミュレートされたシステムの入力遅延を軽減させられる。

他にも、外部の機械翻訳サービスを利用して、画面上のゲームテキストを翻訳できる機能を備える[9]

その他

編集

イコライザー、リバーブ、その他のエフェクトなどのオーディオDSPプラグインや、低入力とオーディオラグオプションを備える。

対応するエミュレータ

編集

各プラットフォームに対応するLibretro Coreを、RetroArchアプリ内でダウンロード・インストールできる。

機種Core (エミュレータ)
3DO4DO
Amstrad CPCCaprice32

CrocoDS

ArcadeMAME

MESSFinalBurn NeoFinalBurn Alpha

Atari 2600Stella
Atari 5200a5200

Atari800

Atari 7800ProSystem
Atari FalconHatari
Atari JaguarVirtual Jaguar
Atari LynxMednafen

Handy

Atari STHatari
ワンダースワンMednafen
コレコビジョンblueMSX

Gearcoleco

コモドール64VICE

Frodo

Commodore 128VICE
AmigaPUAE

UAE4ARM

Commodore CBM-IIVICE
Commodore PETVICE
Commodore Plus/4VICE
VIC-20VICE
MS-DOS and compatible operating systemsDOSBox

DOSBox-PureDOSBox-SVN

Electronika - BK-0010/BK-0011M
Fairchild Channel FFreeChaF
Vectrexvecx
Handheld electronic gameGW
Mac IIminivmac
Odyssey²O2EM
IntellivisionFreeIntv
Mega DuckSameDuck
MSXfMSX

blueMSX

NEC PCエンジン / CDMednafen
NEC TurboGrafx-16 / SuperGrafxMednafen
NEC PC-8000 / PC-8800QUASI88
NEC PC-98Neko Project II Kai

Neko Project II

NEC PC-FXMednafen
NEC TurboGrafx-CDMednafen
Nintendo 3DSCitra

Citra 2018

Nintendo 64Mupen64Plus

Mupen64Plus-NextParaLLEl N64

Nintendo DSDeSmuME

DeSmuME 2015melonDS

ファミリーコンピュータNintendo Entertainment Systemhigan

EmuxFCEUmmNestopia UEQuickNESMesen

ファミコンディスクシステムFCEUmm

MesenNestopiahiganQuickNES

ゲームボーイ/カラーEmux

GambatteSameBoyTGB DualhiganMesen-S

ゲームボーイアドバンスMednafen

gpSPMeteormGBAVisualBoyAdvance

ゲームキューブDolphin
ポケモンミニPokeMini
スーパーファミコンSuper Nintendo Entertainment Systemhigan

MednafenbsnesSnes9xMesen-S

バーチャルボーイMednafen
WiiDolphin
Palm OSMu
Philips CD-iSAME CDi

Cdi 2015

32XPicoDrive
DreamcastRedream

Flycast (formerly Reicast)

ゲームギアGenesis Plus GX

PicoDriveSMS Plus GXGearsystem

セガマスターシステムPicoDrive

Genesis Plus GXSMS Plus GXGearsystem

メガCD/セガCDGenesis Plus GX

PicoDrive

メガドライブ/ジェネシスGenesis Plus GX

BlastEmPicoDrive

セガサターンuoYabause

MednafenYabaSanshiroKronos

Sega ST-VKronos
Sega VMUVeMUlator
SG-1000blueMSX

Gearsystem

Sharp X1X Millennium
X68000PX68k
ZX81EightyOne
ZX SpectrumFuse
PlayStationMednafen

PCSX ReARMedDuckStationSwanStation

PlayStation 2Play!

PCSX2

PlayStation PortablePPSSPP
ネオジオポケット / カラーMednafen

RACE

SpectravideoblueMSX
3DO Interactive MultiplayerOpera
Thomson computersTheodore
UzeboxUzem
光速船VecXGL
Watara SupervisionPotator

歴史

編集

かつてはSSNESという名称で開発されており、プログラマーのNearによって開発されたLibretroの前身「Libsnes」に基づく[10]スーパーファミコン対応のエミュレータであった。

2010年にHans-Kristian Arntzen (themaister) が、GitHubで最初の変更をコミットして開発が始まった[11]。スーパーファミコンソフトを動作させるエミュレータ、bsnesQtベースのインターフェース[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/SPlayStation 2ソフトの動作に対応した。なお当時は、PS2の開発元であったSIEPlayStation 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]

脚注

編集

注釈

編集
  1. ^ LibreELECベースのRetroArchを組み込んだOS。

出典

編集
  1. ^ RetroArch, Libretro, (2023-06-08), https://github.com/libretro/RetroArch/blob/8a6f7e6fffce7e9ea5bffcb24a4a797fc9635781/libretro-common/include/libretro.h 2023年6月9日閲覧。 
  2. ^ libretro/libretro-samples, Libretro, (2023-01-31), https://github.com/libretro/libretro-samples 2023年6月9日閲覧。 
  3. ^ Hans-Kristian Arntzen (2012年12月12日). “Dynamic Rate Control for Retro Game Emulators (PDF)”. Libetro. 2023年6月9日閲覧。
  4. ^ (日本語) RetroArch 1.7.3 - New Desktop UI For PCs!, https://www.youtube.com/watch?v=hfuioGjCItw 2023年6月9日閲覧。 
  5. ^ RetroArch Database, Libretro, (2023-06-08), https://github.com/libretro/libretro-database 2023年6月9日閲覧。 
  6. ^ Playlists and Thumbnails - Libretro Docs”. docs.libretro.com. 2023年6月9日閲覧。
  7. ^ RetroArch”. retroarch.com. 2023年6月9日閲覧。
  8. ^ RetroAchievements” (英語). retroachievements.org. 2023年6月9日閲覧。
  9. ^ RetroArch 1.7.8 – AI Service – How To Set It Up – Libretro” (英語) (2019年9月14日). 2023年6月9日閲覧。
  10. ^ Libsnes” (英語). GitHub. 2023年6月9日閲覧。
  11. ^ SSNES · libretro/RetroArch@eed8e2b” (英語). GitHub. 2023年6月9日閲覧。
  12. ^ SSNES - The SNES emulator that sucks less. / Community Contributions / Arch Linux Forums”. bbs.archlinux.org. 2023年6月9日閲覧。
  13. ^ SSNES => RetroArch. · libretro/RetroArch@9ab51ad” (英語). GitHub. 2023年6月9日閲覧。
  14. ^ RetroArch v1.0.0.0 release information – Libretro” (英語) (2014年1月11日). 2023年6月9日閲覧。
  15. ^ Day 1 Vulkan support – Libretro” (英語) (2016年2月16日). 2023年6月9日閲覧。
  16. ^ We are now on Patreon! – Libretro” (英語) (2016年11月27日). 2023年6月9日閲覧。
  17. ^ “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日閲覧。 
  18. ^ “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日閲覧。 
  19. ^ Orland, Kyle (2018年4月19日). “Better than reality: New emulation tech lags less than original consoles” (英語). Ars Technica. 2023年6月9日閲覧。
  20. ^ Hacker vandalised our buildbot and Github organization – Libretro” (英語) (2020年8月16日). 2023年6月9日閲覧。
  21. ^ Campbell, Ian Carlos (2020年11月30日). “Enterprising developers are emulating PS2 games on the Xbox Series S and X” (英語). The Verge. 2023年6月9日閲覧。
  22. ^ Steam:RetroArch”. store.steampowered.com. 2023年6月9日閲覧。
  23. ^ Machkovech, Sam (2019年7月13日). “RetroArch will be Steam’s biggest emulation launch yet, coming July 30” (英語). Ars Technica. 2023年6月9日閲覧。
  24. ^ 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日閲覧。
  25. ^ a b How to Set Up an All-In-One Retro Game Emulator with RetroArch” (英語). Lifehacker (2015年12月3日). 2023年6月9日閲覧。
  26. ^ The Best Console Emulators (NES, SNES, Genesis, and More) | Page 2 | Digital Trends”. web.archive.org (2017年8月3日). 2023年6月9日閲覧。
  27. ^ a b RetroArch Emulates Nearly Every Classic Gaming Console on Android” (英語). Lifehacker (2013年3月6日). 2023年6月9日閲覧。
  28. ^ Pot, Justin (2017年6月26日). “Eight Advanced RetroArch Features that Make Retro Gaming Great Again” (英語). How-To Geek. 2023年6月9日閲覧。
  29. ^ RetroArch Emulates NES, Playstation, Gameboy Color/Advance And A Whole Lot More [Android]” (英語). MUO (2013年3月1日). 2023年6月9日閲覧。
  30. ^ Orland, Kyle (2018年4月19日). “Better than reality: New emulation tech lags less than original consoles” (英語). Ars Technica. 2023年6月9日閲覧。

関連項目

編集

外部リンク

編集