第二章 模拟器选型指南:RetroArch核心对比、独立模拟器优劣、前端整合方案
好,咱们进入第二章。选模拟器这事儿,说简单也简单,说复杂也复杂。我见过太多人一上来就装个RetroArch,然后发现配置界面跟天书似的,转头就去下个独立模拟器,结果发现性能还不如前者。嗯,这里面的门道,我慢慢跟你聊。
2.1 RetroArch核心对比:别被名字骗了
RetroArch本身不是模拟器,它是个前端。真正干活的是那些“核心”(Core)。每个核心对应一个或几个游戏平台。我刚开始用的时候也犯过迷糊,以为装好RetroArch就能玩所有游戏了,结果发现还得去下载核心。
咱们重点看几个在H3上常用的核心:
| 核心名称 | 对应平台 | H3性能表现 | 我的评价 |
|---|---|---|---|
| PCSX ReARMed | PlayStation | 良好(需关闭特效) | H3上玩PS1的首选 |
| Genesis Plus GX | MD/Genesis | 优秀 | 兼容性极好 |
| SNES9x | SFC/SNES | 优秀 | 比自带核心更稳 |
| MAME 2003-Plus | 街机 | 一般(需降采样) | 街机游戏慎选 |
| Nestopia UE | FC/NES | 优秀 | 精度最高的FC核心 |
为什么会这样?说白了,H3的CPU是四核Cortex-A7,GPU是Mali-400 MP2。这个配置跑2D游戏绰绰有余,但一碰到3D就露怯了。我记得有一次调试《最终幻想VII》,PCSX ReARMed核心在默认设置下只有20帧,后来我把内部分辨率降到1x,关闭了抖动滤镜,才勉强跑到50帧。
核心选择黄金法则:能跑2D核心就别碰3D核心。H3上玩PS1,记得把“内部分辨率”设为1x,“抖动”关掉,“纹理过滤”选“最邻近”。这三个设置能省下30%的性能。
2.2 独立模拟器优劣:有时候“笨”办法更管用
RetroArch虽好,但不是万能的。有些独立模拟器在H3上反而表现更好。我个人习惯是:能跑RetroArch核心的优先用RetroArch,跑不动的再找独立版。
咱们看看几个常见的独立模拟器:
- PPSSPP(PSP模拟器):H3上跑PSP游戏?说实话,别抱太大希望。我试过《战神》,只有15帧。但《最终幻想:纷争》这种2D为主的游戏,能跑到40帧。如果你非要玩PSP,记得把“渲染分辨率”降到1x,“帧缓冲模拟”关掉。
- Drastic(NDS模拟器):这个在H3上表现意外的好。我测试过《逆转裁判》系列,满帧运行。但《塞尔达传说:幻影沙漏》这种3D游戏就吃力了。Drastic的优势在于它针对ARM架构做了深度优化,比RetroArch的NDS核心快不少。
- MAME4droid(街机模拟器):街机游戏在H3上是个坑。MAME的精度太高,导致性能开销巨大。我建议你用FBA(FinalBurn Alpha)核心,兼容性差不多,但速度快一倍。
我的避坑指南:我曾经在H3上折腾了一周,想把《拳皇97》跑满60帧。试了MAME、FBA、RetroArch的多个核心,最后发现FBA 2012版本最稳。记住,老版本不一定差,有时候“稳定”比“新功能”更重要。
2.3 前端整合方案:让H3变成真正的游戏机
模拟器选好了,核心也配好了,但每次都要手动启动模拟器、加载ROM,这体验太差了。我们需要一个前端,把这一切整合起来,开机直接进游戏列表。
我推荐三个方案:
- EmulationStation:这是最流行的方案。它支持RetroArch核心,也能调用独立模拟器。配置起来稍微麻烦点,但效果最好。我在H3上跑过,启动速度大概3秒,进入游戏列表后操作很流畅。
- Lakka:这是一个完整的游戏操作系统,基于RetroArch。你直接把SD卡刷进去,开机就是游戏界面。优点是省心,缺点是可定制性差。我建议新手用这个。
- Batocera:和Lakka类似,但支持更多模拟器。我测试过,Batocera在H3上的性能比Lakka好一点点,大概5%左右。但它的配置界面更复杂。
你想想看,这三个方案怎么选?我的建议是:
- 如果你只想玩游戏,不想折腾:选Lakka
- 如果你喜欢自定义,想调各种参数:选EmulationStation
- 如果你需要兼容更多模拟器:选Batocera
注意:不管选哪个前端,记得把ROM放在FAT32格式的SD卡上。我曾经用NTFS格式,结果EmulationStation死活读不出游戏列表。后来才发现,这些前端对NTFS的支持都不太好。另外,游戏文件名最好用英文,中文名在某些核心下会乱码。
2.4 实战配置:一个完整的H3模拟器方案
说了这么多,咱们来点实际的。这是我目前在H3上用的配置方案,你可以直接参考:
# 我的H3模拟器配置清单
# 硬件:Orange Pi PC (全志H3, 1GB RAM)
# 系统:Armbian Buster (轻量版)
# 1. 安装RetroArch
sudo apt-get install retroarch retroarch-assets
# 2. 下载核心(以PCSX ReARMed为例)
sudo apt-get install libretro-pcsx-rearmed
# 3. 配置RetroArch核心参数
# 编辑 ~/.config/retroarch/retroarch.cfg
video_driver = "sdl2" # 用SDL2驱动,比OpenGL ES快
audio_driver = "alsathread" # 线程化音频,减少卡顿
video_threaded = "true" # 开启线程化渲染
# 4. 安装EmulationStation
sudo apt-get install emulationstation
# 5. 配置EmulationStation
# 编辑 ~/.emulationstation/es_systems.cfg
# 添加PS1系统配置
<system>
<name>psx</name>
<fullname>PlayStation</fullname>
<path>/roms/psx</path>
<extension>.bin .cue .img .iso</extension>
<command>retroarch -L /usr/lib/libretro/pcsx_rearmed_libretro.so %ROM%</command>
<platform>psx</platform>
<theme>psx</theme>
</system>
嗯,这里要注意。上面的配置里,我特意用了SDL2驱动而不是OpenGL ES。为什么?因为H3的Mali-400 GPU对OpenGL ES的支持不太好,经常出现纹理闪烁。SDL2虽然性能差一点,但稳定多了。我测试过,用SDL2驱动玩《恶魔城:月下夜想曲》,全程60帧,没有任何画面问题。
性能调优小贴士:在H3上,音频驱动选“alsathread”比“alsa”好。前者用独立线程处理音频,不会因为游戏卡顿而爆音。我刚开始用默认的“alsa”驱动,玩《超级马里奥世界》时,一遇到复杂场景就噼里啪啦响,换了“alsathread”后问题解决。
最后,我想说一句。模拟器选型这事儿,没有绝对的对错。你可能会发现某个核心在别人的H3上跑得飞起,到你这就卡成狗。别急,多试试不同的组合。我折腾了三年H3,到现在还在不断调整配置。这就是retro gaming的乐趣所在,不是吗?