ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

shadPS4 PS4 模拟器完整新手指南:3 步在 PC 上跑通血源诅咒

shadPS4 PS4 模拟器完整新手指南:3 步在 PC 上跑通血源诅咒

shadPS4 PS4 模拟器完整新手指南:3 步在 PC 上跑通血源诅咒

【免费下载链接】shadPS4PlayStation 4 emulator for Windows, Linux, macOS and FreeBSD written in C++项目地址: https://gitcode.com/GitHub_Trending/sh/shadPS4

shadPS4 是用 C++ 编写的 PS4 模拟器,在 Windows、Linux、macOS 三个平台上都能运行,目前已能玩《血源诅咒》《黑暗之魂 重制版》《Red Dead Redemption》等作品。官方自述处于早期开发阶段,别指望完美体验。下面把源码仓库编译成可用模拟器。

这个仓库不是安装包

最常见的误会:以为下载源码就能双击玩。这个仓库是模拟器核心本体,不带 GUI——只想玩游戏就下官方的 QtLauncher,有完整图形界面;要改内核、提代码,才需要自己编译。

原理不神秘:PS4 的 CPU 是 x86-64 架构,游戏代码在 PC 上原生执行,不用翻译。真正要重写的只有内核与系统库,以及最硬的 GPU。

Linux:3 条命令编译跑起来

先装系统依赖,Clang、CMake、SDL2、Vulkan 等约 15 个包,完整清单见构建文档。编译器官方推荐 Clang 23(与官方 CI 一致),用 GCC 可能撞上未知问题。

git clone --depth 1 --recursive https://gitcode.com/GitHub_Trending/sh/shadPS4 cd shadPS4 && cmake -S . -B build/ -DCMAKE_C_COMPILER=clang-23 -DCMAKE_CXX_COMPILER=clang++-23 cmake --build ./build --parallel $(nproc)

--recursive不能省:所有第三方库都是子模块,漏了 clone 下来不完整。编译阶段电脑卡死,就去掉--parallel $(nproc)单线程慢慢跑。

Windows 走 Visual Studio 2022 + CMake;macOS 需 26.0 以上,Intel Mac 不支持。编译产物出来后,在配置里指好游戏目录,传游戏 ID 即可启动:

./build/shadps4 CUSA00900

CUSA00900是《血源诅咒》美版 ID,也可以直接传游戏可执行文件路径。

这些 .sprx 文件要自己备

模拟器要加载一批来自 PS4 官方固件的.sprx模块,共 30 余个,放进sys_modules文件夹。

  • 来源:必须从你合法持有的 PS4 主机上 dump,模拟器本体不带这些文件
  • 位置:shadPS4 目录下的sys_modules文件夹
  • 常用项:libSceCesCs.sprx、libSceFontFt.sprx、libSceJson2.sprx、libSceLibcInternal.sprx、libSceUlt.sprx等,完整清单在 README

缺了它,游戏要么起不来,要么走到某一步崩溃。这是大多数人卡住的第一关。

模拟器里分量最重的模块是谁

答案是着色器重编译器。PS4 的 GPU 是 AMD 芯片,代号"利物浦",它的指令集 PC 上的 GPU 看不懂,中间必须过一道重编译。

流程三步走:前端解码 GCN 字节码为中间表示 IR → 跑 20 多个优化 pass(在 src/shader_recompiler/)→ 产出 SPIR-V 交给 Vulkan 执行。设计参照了 yuzu 的 Hades 着色器编译器,省掉从零写优化器的工作量。

GPU 模拟本体在src/video_core/:amdgpu/liverpool.cpp逐条解释寄存器级命令,renderer_vulkan/管 PC 侧的队列、帧图和交换链。音频与输入都走原生代码,开销可忽略。

最容易踩的几个坑

没手柄?内置映射够用。WASD 左摇杆、IJKL 右摇杆,三角圆圈叉方块对应小键盘 8/6/2/4(或 C/B/N/V),方向键就是方向键。Xbox 和 DualShock 手柄即插即用,自定义绑定按游戏保存,单键最多绑三个。

选游戏前查兼容性。项目维护着单独的游戏兼容性列表,逐作记录运行情况。盲选没人验证过的游戏,大概率是在浪费别人已记录过的崩溃时间。

F11 全屏,F10 看帧数,F12 抓帧。部分键盘需按住 Fn 键,Mac 用户把 Control 换成 Command 键。

真崩了,留日志。调试文档 讲了如何用 RenderDoc 看一帧里发生了什么、bug 报告该带什么信息。Linux 用 RenderDoc 记得设置SDL_VIDEODRIVER=x11(Wayland 下不可用)。

现状一句话总结

《战神》级别的重作暂时还跑不了,官方也直说别期待完美体验。从兼容性列表挑一款,卡住就把日志丢进 issue——这个"能玩"清单,每个版本都在变长。

【免费下载链接】shadPS4PlayStation 4 emulator for Windows, Linux, macOS and FreeBSD written in C++项目地址: https://gitcode.com/GitHub_Trending/sh/shadPS4

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

返回列表