在 PC 上运行 Switch 游戏:Ryujinx 从安装到性能调优的完整指南
【免费下载链接】Ryujinx用 C# 编写的实验性 Nintendo Switch 模拟器项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx
Ryujinx 是一个用 C# 编写的免费开源 Nintendo Switch 模拟器,用 OpenGL、Vulkan 或 Metal 还原主机画面,用自研 CPU 翻译器 ARMeilleure 还原 ARMv8 指令。按项目 README 的统计口径,它已经测试过约 4300 款游戏,其中 4100 多款能进入游玩状态,约 3550 款达到可玩水平——这个覆盖面上,主流大作和大量中小体量作品都在其中。本文按"安装、首次进游戏、调优、手柄、扩展、排障"的顺序,带你在 PC 上把这套 Switch 模拟器真正跑起来。
一、动手前的 5 分钟自查
先问自己三个问题:显卡支不支持 OpenGL 4.5 以上?内存到没到 8 GiB?能不能装一个 Vulkan 驱动?前两个问题决定了"能不能跑",第三个决定"跑得快不快"。README 明确提醒:内存不足 8 GiB 时,体验差和意外崩溃都可能发生。
| 硬件 | 能跑 | 跑得爽 |
|---|---|---|
| 内存 | 8 GiB(README 底线要求) | 16 GiB |
| CPU | 四核 | 六核以上、单核性能较强 |
| 显卡 | 支持 OpenGL 4.5 | 独显 + Vulkan 驱动 |
| 系统 | Windows 10 / macOS / Linux | 最新系统版本 |
| 运行库 | .NET 8.0 或更高 SDK(自行编译时需要) | 同左 |
获取程序有两条路。省事路线:到 Ryujinx 官网下载最新自动构建包,解压到不含中文的路径,运行主程序即可;注意官网的自动构建对每次 master 提交都会打包,README 也提示它可能不稳定,遇到怪问题优先换正式版。动手路线:安装 .NET 8.0 SDK(版本需满足 global.json 的最低要求)后克隆源码:
git clone https://gitcode.com/GitHub_Trending/ry/Ryujinx
在项目目录执行dotnet build -c Release -o build,产物会出现在新建的 build 目录里。两条路殊途同归:程序首次启动后,所有用户数据都集中在用户目录下的Ryujinx文件夹,以后找存档、找日志都从这里进。
二、第一次进入游戏:最短路径
拿到程序后,最短路径是:加载文件 → 补系统文件 → 点启动 → 看到画面。
- 菜单选"加载文件",挑一个
.xci或.nsp文件。游戏库里会新增一项。 - 首次启动某款游戏时,界面会提示需要系统固件文件(钥匙和系统文件)。请只使用从你自己 Switch 主机上提取的固件,这是合规底线。
- 点启动。第一次加载会稍慢,属正常现象,原因见下面这一节。
如果游戏停在菜单出不去,多半是游戏文件不完整或固件不匹配,优先核对这两处。走到标题画面之后,剩下的事就是把它调顺。
三、Ryujinx 性能优化:按机器分档调
图形后端、分辨率缩放、抗锯齿、各向异性过滤、磁盘着色器缓存、FSR 缩放滤镜这些开关,README 都列在图形增强项里。别逐项乱试,先按机器档位对号入座:
| 设置项 | 低配(核显/集显) | 中配(入门独显) | 高配(中高端独显) |
|---|---|---|---|
| 渲染后端 | OpenGL | Vulkan | Vulkan |
| 分辨率缩放 | 1.0x | 1.0x~1.5x | 2x 起,视帧率上调 |
| 抗锯齿 | 关 | 视帧率余量 | 可开 MSAA |
| 各向异性过滤 | 4x | 4x~8x | 16x |
| 磁盘着色器缓存 | 开 | 开 | 开 |
内存管理有三档可选(对应源码里的 SoftwarePageTable / HostMapped / HostMappedUnsafe 三种模式):默认的主机映射模式最快,遇到个别游戏的兼容性问题再退回偏慢但更稳的软件模式。
音频输出默认走 SDL2,OpenAL 和 libsoundio 作为备用后端,声音异常时在选项里换后端即可,具体见后面的排障章节。
还有一项值得单独说:持久化翻译缓存。它在默认的系统设置里就是开启的,作用是把翻译好的函数缓存下来,省掉每次启动的重复翻译。代价是:同一款游戏要至少启动两次到标题画面,第三次启动起加载速度才会明显变快——之后这个收益是永久的。别因为头两次的慢而关掉它。
画面和声音都稳了,接下来是把操控接上。
四、把手柄接上:识别与映射
Ryujinx 对键盘、鼠标、触控、Joy-Con 和绝大多数手柄都有支持,映射统一在输入设置菜单里完成。
| 手柄类型 | 连接方式 | 备注 |
|---|---|---|
| Xbox 手柄 | USB 或蓝牙 | 即插即用,无需额外软件 |
| PS4 / PS5 手柄 | USB / 蓝牙 | 需要 DS4Windows 或 BetterJoy 辅助识别 |
| Switch 双手柄(Joy-Con) | 蓝牙 | 体感需 DS4Windows 或 BetterJoy |
| Pro 手柄 | 蓝牙 | 原生支持 |
| 键盘 | 直接映射 | 输入设置里逐键配置 |
两个小技巧:先插好手柄再启动模拟器,识别率更高;PS 系手柄识别不了,先确认系统层面能不能看到它,再看辅助工具有没有跑起来。映射界面里可以逐设备、逐按键配置,做完用"测试"确认一下再进游戏。
五、内容扩展:DLC、Mod 与存档备份
游戏能跑起来之后,内容管理也在同一套界面里完成。
DLC:游戏库右键 → 管理 DLC,把.nsp格式的 DLC 文件加进去即可,同一游戏的多个版本 DLC 可以并存管理。
Mod:右键游戏 → 打开 Mods 目录,把文件放进对应位置。Ryujinx 支持 romfs、exefs 以及运行时修改(如作弊代码)三类。改动前建议先备份原文件,Mod 出问题随时能回滚。
存档:进度保存在 Ryujinx 用户目录下的user/save里,按用户和游戏组织。备份就是整个文件夹拷走;恢复就是原样拷回。长期玩一款游戏的话,隔一两周拷一次成本很低。
DLC、Mod、存档都属于用户目录内容,重装系统和模拟器前,先把这个文件夹整体挪走。
六、卡住时怎么办:四个场景各三步
排障时先确定场景,再按对应的几步走,别混着试。
黑屏(启动后无画面)
- 更新显卡驱动到最新,并确认 OpenGL 4.5 / Vulkan 驱动正常。
- 换一个渲染后端(OpenGL 与 Vulkan 互换)重试。
- 核对固件版本与游戏是否匹配,游戏文件是否完整。
卡顿或帧率低
- 分辨率缩放降回 1.0x,关闭抗锯齿。
- 确认持久化翻译缓存已开启,且这款游戏已经启动过至少两次(第三次起加载才提速)。
- 确认内存管理模式为主机映射,并关掉后台占内存的应用。
手柄无响应
- 先确认系统层面能否识别该手柄,PS 系确认辅助驱动在运行。
- 关闭游戏,重连手柄后在输入设置里重新映射并测试。
- 换一个 USB 口或蓝牙重连,排除端口/信道干扰。
声音杂音或延迟
- 在音频设置里把后端从 SDL2 切到 OpenAL(或反向)。
- 更新声卡驱动。
- 降低系统音频独占/增强功能设置,观察是否改善。
大多数"玄学问题"走到这一步都能定位。若仍未解决,把日志带上,问题会好处理很多——这就引到下面的进阶入口。
七、进阶入口:日志、预设与源码位置
日志:运行日志按时间命名,存放在程序目录的Logs里。反馈问题或自查异常时,带上出问题那一次对应的日志文件,比截图有用得多。
每游戏配置:选项里可以按游戏保存配置,不同游戏不同的后端、缩放、内存模式互不干扰,避免"为了 A 游戏改坏 B 游戏"。
性能监控:界面内可开启帧率显示,配合系统任务管理器看 CPU/GPU 占用,判断瓶颈在 CPU 还是 GPU,再决定调哪项。
源码位置(给想往下看的人):
- CPU 翻译器 ARMeilleure:src/ARMeilleure/
- 图形 GPU 模拟:src/Ryujinx.Graphics.Gpu/
- Vulkan 渲染后端:src/Ryujinx.Graphics.Vulkan/
- 系统服务(HLE 层):src/Ryujinx.HLE/HOS/
- 项目文档索引:docs/README.md
遇到解决不了的问题,官方 Discord 是最快的渠道,兼容性列表也可以用来查某款游戏的当前状态。
八、合规提醒
最后把底线说清楚:
- 游戏文件(
.xci/.nsp)只使用你自己合法拥有的实体卡带或数字版备份; - 系统固件只从你自己的 Switch 主机提取;
- 不要下载、分享或传播任何他人的游戏 ROM 和加密密钥。
模拟器本身免费开源(MIT 协议),用对内容,它就能长期稳定地服务于你的游戏库。
回到起点:现在你手上应该已经有一个能启动游戏的 Ryujinx、一个映射好的手柄、一份隔周备份的存档,以及一套"先查驱动、再换后端、最后看日志"的排障思路。剩下的是慢慢把游戏库填进去——第一次加载慢一点没关系,翻译缓存会替你记住每一次付出。
【免费下载链接】Ryujinx用 C# 编写的实验性 Nintendo Switch 模拟器项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考