「RetroArch」の版間の差分
(en:RetroArchへの転送ページ) |
|||
1行目: | 1行目: | ||
+ | [[Category:ゲーム]] |
||
− | #redirect[[en:RetroArch]] |
||
+ | [[Category:エミュレータ]] |
||
+ | [[en:RetroArch]] |
||
+ | {{Note|RetroArch は [[Arch Linux]] とは関係ありません。}} |
||
+ | |||
+ | RetroArch はモジュール式のコマンドラインを使用する、マルチシステムエミュレータです。高速かつ軽量で、移植性が高くなるように設計されています。RetroArch には他のエミュレータには見られないような機能もあり、リアルタイムの巻き戻しや libretro API によるゲーム別のシェーディングなどが出来ます。 |
||
+ | |||
+ | == インストール == |
||
+ | {{App|RetroArch|安定版。|http://www.libretro.com/|{{AUR|retroarch}}}} |
||
+ | {{App|RetroArch (git)|開発版。|http://www.libretro.com/|{{AUR|retroarch-git}}}} |
||
+ | {{App|RetroArch-Phoenix (git)|GTK+ フロントエンド、開発版。|https://github.com/Themaister/RetroArch-Phoenix|{{AUR|retroarch-phoenix-git}}{{Broken package link|{{aur-mirror|retroarch-phoenix-git}}}}, {{AUR|retroarch-phoenix-qt-git}}{{Broken package link|{{aur-mirror|retroarch-phoenix-qt-git}}}} (qt ビルド)}} |
||
+ | |||
+ | == 使用方法 == |
||
+ | RetroArch は''エミュレータコア''や''エミュレータ実装''と呼ばれる形でライブラリを分離しており [https://aur.archlinux.org/packages/?O=0&K=libretro AUR] や [http://github.com/libretro libretro github リポジトリ] から入手できます。 |
||
+ | |||
+ | [[AUR]] のパッケージはライブラリを {{ic|/usr/lib/libretro/}} にインストールします。ライブラリを選択して ''retroarch'' を実行する場合: |
||
+ | $ retroarch -L /usr/lib/libretro/libretro-(emulation core).so ~/path/to/foo |
||
+ | |||
+ | {{Tip|[https://github.com/ToadKing/RetroArch-Rpi/blob/master/retroarch-zip retroarch-zip] シェルラッパーを使うことで RetroArch で {{ic|*.zip}} ファイルを利用することもできますが、正しく実装されていないため不安定です。}} |
||
+ | |||
+ | デフォルトのエミュレーションコアは {{ic|retroarch.cfg}} で定義でき、毎回コアを指定する必要がなくなります。 |
||
+ | |||
+ | 例: |
||
+ | {{hc|/etc/retroarch.cfg or ~/.retroarch.cfg|2= |
||
+ | libretro_path = "/usr/lib/libretro/libretro-foo.so"}} |
||
+ | |||
+ | == 設定 == |
||
+ | RetroArch の設定ファイルは {{ic|/etc/retroarch.cfg}} にあり、コメントが大量に付記されています。 |
||
+ | |||
+ | メインの設定ファイル {{ic|retroarch.cfg}} で {{ic|#include "foo.cfg"}} ディレクティブを使うことで設定ファイルを分割することができます。{{ic|--appendconfig /path/to/config}} パラメータを使うことで設定を上書きすることができ、キーバインドやビデオ設定、音声設定などを実装に合わせて変更する必要がある場合に便利です。 |
||
+ | |||
+ | {{Tip|RetroArch は ''[https://gitorious.org/bsnes/xml-shaders bsnes xml filters]'' と ''[https://github.com/libretro/common-shaders cg shaders]'' をロードすることができ、それぞれ {{ic|retroarch.cfg}} で {{ic|video_bsnes_shader}} と {{ic|video_cg_shader}} として定義します。}} |
||
+ | {{Note|{{AUR|retroarch-git}} で ''cg shaders'' を使うには {{pkg|nvidia-cg-toolkit}} が必要です。}} |
||
+ | {{Warning|''[[ALSA]]'' を使用する場合、{{ic|audio_out_rate}} をシステムのデフォルト出力レート (通常は 48000) に合わせる必要があります。}} |
||
+ | |||
+ | == トラブルシューティング == |
||
+ | === 入力デバイスが使えない === |
||
+ | RetroArch を CLI で実行したり [[Xorg]] 以外のディスプレイサーバーで実行すると問題が発生します。{{ic|/dev/input}} ノードは root だけがアクセスできるように制限されているためです。この問題は手動で {{ic|<nowiki>KERNEL=="event*", NAME="input/%k", MODE="666"</nowiki>}} という中身のルールを {{ic|/etc/udev/rules.d/99-evdev.rules}} に追加することで解決します。次を実行して udev ルールをリロードしてください: |
||
+ | # udevadm control --reload-rules |
||
+ | |||
+ | システムを再起動したりデバイスの再接続ができない場合、次のコマンドでパーミッションを強制的に設定することもできます: |
||
+ | # chmod 666 /dev/input/event* |
||
+ | |||
+ | === ビデオパフォーマンスが悪い === |
||
+ | ビデオパフォーマンスが低いのを補うために、{{ic|~/.config/retroarch/retroarch.cfg}} に {{ic|<nowiki>video_threaded = true</nowiki>}} と設定することで RetroArch を別のスレッドで実行することができます。 |
||
+ | |||
+ | ただし、垂直同期が完全に使えなくなり、遅延が多少増えるため、RetroArch のビデオ解像度やリフレッシュレートを調整することで問題が解決する場合はこの手段は使わないほうが良いでしょう。 |
||
+ | |||
+ | == 参照 == |
||
+ | * [https://github.com/libretro/RetroArch/wiki RetroArch wiki on Github] |
||
+ | * [http://github.com/libretro/libretro.github.com/wiki/Documentation-devs Documentation for developers] |
2015年10月31日 (土) 15:20時点における版
RetroArch はモジュール式のコマンドラインを使用する、マルチシステムエミュレータです。高速かつ軽量で、移植性が高くなるように設計されています。RetroArch には他のエミュレータには見られないような機能もあり、リアルタイムの巻き戻しや libretro API によるゲーム別のシェーディングなどが出来ます。
インストール
RetroArch — 安定版。
RetroArch (git) — 開発版。
RetroArch-Phoenix (git) — GTK+ フロントエンド、開発版。
- https://github.com/Themaister/RetroArch-Phoenix || retroarch-phoenix-gitAUR[リンク切れ: アーカイブ: aur-mirror], retroarch-phoenix-qt-gitAUR[リンク切れ: アーカイブ: aur-mirror] (qt ビルド)
使用方法
RetroArch はエミュレータコアやエミュレータ実装と呼ばれる形でライブラリを分離しており AUR や libretro github リポジトリ から入手できます。
AUR のパッケージはライブラリを /usr/lib/libretro/
にインストールします。ライブラリを選択して retroarch を実行する場合:
$ retroarch -L /usr/lib/libretro/libretro-(emulation core).so ~/path/to/foo
デフォルトのエミュレーションコアは retroarch.cfg
で定義でき、毎回コアを指定する必要がなくなります。
例:
/etc/retroarch.cfg or ~/.retroarch.cfg
libretro_path = "/usr/lib/libretro/libretro-foo.so"
設定
RetroArch の設定ファイルは /etc/retroarch.cfg
にあり、コメントが大量に付記されています。
メインの設定ファイル retroarch.cfg
で #include "foo.cfg"
ディレクティブを使うことで設定ファイルを分割することができます。--appendconfig /path/to/config
パラメータを使うことで設定を上書きすることができ、キーバインドやビデオ設定、音声設定などを実装に合わせて変更する必要がある場合に便利です。
トラブルシューティング
入力デバイスが使えない
RetroArch を CLI で実行したり Xorg 以外のディスプレイサーバーで実行すると問題が発生します。/dev/input
ノードは root だけがアクセスできるように制限されているためです。この問題は手動で KERNEL=="event*", NAME="input/%k", MODE="666"
という中身のルールを /etc/udev/rules.d/99-evdev.rules
に追加することで解決します。次を実行して udev ルールをリロードしてください:
# udevadm control --reload-rules
システムを再起動したりデバイスの再接続ができない場合、次のコマンドでパーミッションを強制的に設定することもできます:
# chmod 666 /dev/input/event*
ビデオパフォーマンスが悪い
ビデオパフォーマンスが低いのを補うために、~/.config/retroarch/retroarch.cfg
に video_threaded = true
と設定することで RetroArch を別のスレッドで実行することができます。
ただし、垂直同期が完全に使えなくなり、遅延が多少増えるため、RetroArch のビデオ解像度やリフレッシュレートを調整することで問題が解決する場合はこの手段は使わないほうが良いでしょう。