功能特性
shadPS4 采用现代 C++(C++23)编写,围绕 Vulkan 1.3 构建图形管线。以下特性均整理自项目公开源码、官方 Wiki 与版本发布说明。
现代 C++ 代码库
项目以 C++23 标准编写,自 2022 年 10 月启动,代码完全开源(GPL-2.0),结构清晰适合学习与二次开发。
Vulkan 1.3 渲染
图形核心基于 Vulkan 1.3 实现,要求 VK_KHR_swapchain 与 VK_KHR_push_descriptor 扩展,v0.19.0 重构了缓冲管理器并实现批量上传。
着色器重编译器
将 PS4 GPU 的着色器指令实时转译为 Vulkan SPIR-V,v0.19.0 改进了非 AMD GPU 上 BaryCoord 属性处理。
LLE / HLE 双模式
支持加载真实 PS4 固件模块(LLE)与模拟器内置重实现(HLE)两种方式,兼顾兼容性与免固件运行,可加载 libSceFont、libSceRtc 等 15 个固件模块。
奖杯系统支持
通过导出主机奖杯密钥,游戏内的成就可正常解锁并记录,v0.19.0 修复了奖杯名称显示问题。
QtLauncher 图形界面
配套的 Qt 启动器提供游戏库管理、版本切换(稳定版/每夜版)、设置面板等完整 GUI 能力,普通用户推荐使用。
补丁与 DLC 支持
支持游戏更新补丁(-patch 目录)与附加内容(DLC)安装,v0.19.0 新增以 ZAR 格式加载 DLC 的能力。
多媒体编解码
内置视频解码与音频处理库,v0.19.0 的 vdec2 组件新增 HEVC/H.265 解码支持,改善过场动画播放。
截图与输入
支持游戏内截图(PNG 保存)与手柄输入映射,v0.19.0 加入基础 HLE 键盘库,兼容更多输入场景。
| 编程语言 | C++(C++23 标准) |
|---|---|
| 图形接口 | Vulkan 1.3(要求 VK_KHR_swapchain、VK_KHR_push_descriptor 扩展) |
| 界面组件 | SDL3(核心前端)、Qt(QtLauncher 启动器)、ImGui(叠加层) |
| 许可证 | GNU General Public License v2.0(GPL-2.0) |
| 支持平台 | Windows、Linux、macOS、FreeBSD |
| 指令集基线 | x86-64-v3(Intel Haswell+ / AMD Excavator+ / Apple M1+ via Rosetta 2) |

