# RSDKv3 Decompilation：在重建的 Retro Engine v3 上运行 Sonic CD（2011）

> 重建 Retro Engine v3，即 2011 年 Sonic CD 重制版所用的引擎，作为可在 Windows、Linux、macOS 和 Android 上运行的原生 C++ 源码移植。引擎运行官方发行版中的游戏脚本和素材，仓库本身不附带这些内容；项目还加入了模组加载器、可重映射按键的设置文件、对移动版更新脚本的支持，以及更多开发者菜单调试快捷键。其许可证称代码大多在功能上与原作相同，而不是逐字节一致；同一团队的 RSDKv5 反编译另作独立案例收录。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-19
- 收录于：2026-11-02
- 原始资源：<https://github.com/RSDKModding/RSDKv3-Decompilation>
- 一手来源：<https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/rsdkv3-sonic-cd-decomp-case/>
- 记录 JSON：<https://awesomerea.org/resources/rsdkv3-sonic-cd-decomp-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/rsdkv3-sonic-cd-decomp-case/index.md)

## 使用条件与局限

- README 称其为 Retro Engine v3 的完整反编译；其许可证说明仓库中也有原创代码，且大部分代码旨在与所指定 RSDK 版本在功能上相同。RETRO_ORIGINAL_CODE 选项会移除自定义代码，但据 README 和 CMake 文件，这样无法构建出可玩的游戏。所审阅提交位于 1.3.3 版（2025-11-02）之后 19 个提交，该版本附带引擎的 Windows x86、x64、Linux、macOS 和 Android 预构建程序。
- 缺少官方发行版 Sonic CD 的素材便无法运行，素材可来自原版 Steam 版、Steam、Epic 或 Switch 上的 Sonic Origins，或已下架的 iOS 和 Android 版本。引擎读取游戏的 Data.rsdk 数据包，全动态影像只支持原版 Steam 版的视频文件。常见问题指出，Sonic Origins 的数据文件采用 RSDKv5 数据包格式，且不含音乐和音效；Origins 新增的可玩角色在发布版构建中会被屏蔽。仓库不含任何游戏数据或游戏脚本；脚本反编译另有独立仓库。
- 须递归克隆仓库，因为 GitHub 的源码 ZIP 不含 tinyxml2 和 flatpak shared-modules 子模块。CMake 构建在 Windows 上使用 Visual Studio 与 vcpkg（GLEW、SDL2、libogg、libtheora、libvorbis），在 Linux 上使用发行版软件包，macOS 和 Android 另有构建指南；源码树中还有 README 未说明的 iOS、UWP 和 PS Vita 工程文件，Switch 和 New 3DS 移植则是项目不提供支持的非官方分支。
- CI 在开启 RETRO_DISABLE_PLUS 的情况下构建 Windows x86、x64、Linux、macOS 和 Android 版本。项目未公开与原版引擎二进制文件的对照结果；常见问题说明官方版本中已有的缺陷大多不会修复，排行榜和成就等菜单按钮也仍未实现。
- 自定义的《RSDKv3/v4 反编译源码许可证 v2》要求提供给任何人的预构建可执行文件都必须默认关闭 DLC，禁止商业用途及分发独特模组素材以外的游戏素材，要求注明原作与反编译的开发者，并要求所有派生版本遵守同一许可。许可证注明原 RSDK 作者为 Christian Whitehead，反编译作者为 Rubberduckycooly 和 st×tic。Sega 的游戏和素材保留各自权利。

## 一手来源

1. <https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/README.md>
2. <https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/LICENSE.md>
3. <https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/FAQ.md>
4. <https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/CMakeLists.txt#L7-L17>
5. <https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/.gitmodules>
6. <https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/.github/workflows/build.yml>
7. <https://github.com/RSDKModding/RSDKv3-Decompilation/tree/c01fc0c360e8e35e791630407ea5c7a426718e54/RSDKv3>
8. <https://github.com/RSDKModding/RSDKv3-Decompilation/releases/tag/1.3.3>

## 同分区更多条目：游戏

- [RSDKv4 Decompilation：Retro Engine v4 与《索尼克》1、2（2013）菜单的反编译](https://awesomerea.org/zh/resources/rsdkv4-sonic-1-2-decomp-case/index.md) · 案例
- [RSDKv5 Decompilation：重建 Retro Engine v5 与 v5U](https://awesomerea.org/zh/resources/rsdkv5-engine-decomp-case/index.md) · 案例
- [Sonic Mania：面向 RSDKv5 引擎的游戏代码反编译重建](https://awesomerea.org/zh/resources/sonic-mania-decomp-case/index.md) · 案例
- [SpaceCadetPinball：将反编译游戏逻辑适配到 SDL2](https://awesomerea.org/zh/resources/space-cadet-pinball-case/index.md) · 案例
- [TicTacToe-AI：REA 分叉对单个游戏方法的有限重建](https://awesomerea.org/zh/resources/rea-engine-tictactoe-case/index.md) · 案例
- [UltraSunnyMoon：以 REA 主导的部分《宝可梦 究极之日》重建](https://awesomerea.org/zh/resources/ultrasunnymoon-rea-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
