boykopovar/AnyPS5
把 PS5 可执行文件重链接并在 Linux/Windows 上以原生方式运行,不靠模拟器,面向移植与保存研究。
解决什么问题
在 PC 上跑主机游戏,常规做法是模拟器:把主机指令集和系统固件整套重实现,再让游戏跑在上面。准确,但代价高,而且始终背着复制主机生态的合规包袱。AnyPS5 换了条路:用 relinker 把 PS5 可执行文件转换成宿主机的原生二进制格式,再把游戏对系统 prx 库的调用链接到项目自研的实现上,从而完全不模拟硬件。
有什么不同
最关键的设计是没有模拟 CPU,也没有独立运行时进程。relinker 改写二进制,项目自己实现系统库,游戏代码直接作为宿主原生进程运行。着色器重编译器把 PS5 着色器翻译成 SPIR-V 交给 Vulkan,这是让 GPU 部分跨厂商可移植的关键。与常见模拟器相比,取舍很清楚:换来了接近原生的性能潜力和与宿主 API 的直接集成,但兼容性取决于实现了多少系统函数,而不是把硬件建模得多逼真。README 自己也提醒,它展示的兼容百分比只统计项目已知的函数,不是 PS5 全部系统函数。
适合谁
适合做游戏 bring-up 和保存工作的人:能看懂错误输出、愿意按游戏逐个提交测试报告、能在 C++ 代码库里补系统库实现的开发者。项目专门开了按游戏分类的讨论区,说明兼容性是参差不齐的。它不适合期待开箱即用的玩家——README 明确写了遇到不支持的状态会抛 std::runtime_error 并终止进程,诚实但毫不宽容。想要广泛游戏库兼容的人,应该去看成熟模拟器。
上手成本
需要 C++ 工具链和 Vulkan 时代的图形栈;README 给的是构建说明,不是一键安装。macOS 只支持 relinker-only 构建。若想把代码集成进别的软件,GPL-2.0 是需要留意的约束。项目非常年轻,README 的文档目录里自己就列了技术债。要做好读架构文档、自己调失败的准备,别指望行为稳定。
点评
这个思路确实和模拟器阵营不一样,SPIR-V 着色器路径加 relinker 设计是实打实的工程,不是 PPT。但项目才 81 天,一个月涨了约 4.7 万 star,这是暴涨而非成熟平台;cpp 榜单第一反映的是关注度,不是完成度。README 对逐游戏结果着墨很少,兼容性都推给了讨论区。做保存研究值得关注甚至参与;但目前还不能拿它来搭产品。
Hacker News 讨论
本文由 AI 根据项目 README 生成,更新于 2026年10月24日,以项目官方文档为准。