libretro
ナビゲーションに移動
検索に移動
libretroとは、RetroArchプロジェクトがオープンソースのもとで開発している「エミュレーターをサクサクっと開発するためのライブラリ」である。
より正確には「libretroプロジェクトが使用例として公開しているのがRetroArch」である。
大雑把にいえば汎用的なゲーム開発向けライブラリである「SDL」をエミュレーターの開発向けにさらに高度化させたものと思って間違いない。
OSに依存しないGUIの作成をはじめ、「ゲームパッド周りの処理」や「ブラウン管テレビ風の画像処理」などを手軽に実装できる。こいつを使えばエミュレーターの開発者は対象機器のCPUやGPUなどのハードウェア解析やロム解析だけに集中できる。
主な機能[編集 | ソースを編集]
- 画像処理 = GPUやシェーダーなどを意識せず高速処理が可能。エフェクト周りも充実しておりブラウン管テレビやNTSCなどを再現したりもできる。
- 映像と音声の同期
- 録画機能 = 内部的にはffmpegのlibavcodecを利用している。
- ゲームパッド = Retropadと呼ばれる抽象化レイヤーで実際に繋がっているゲームパッドを意識する必要がない。
- 仮想ゲームパッド = Android向けに仮想ゲームパッドをサクッと実装できる。
- ネットプレイ = P2Pのネットプレイをサクッと実装できる。
- 音声処理 = イコライザーやリバーブなどをサクッと実装できる。
- オートセーブ = オートセーブをサクッと実装できる。
- 巻き戻し = フレーム単位でゲームプレイを逆走できる。
- データベース = サムネイルやROMをサクッと管理できる。