跳过正文
  1. 项目/
  2. Bocchi House 移植平台/

Paladin(仙剑奇侠传):Bocchi House 的下一个移植目标

·111 字·1 分钟·
FunBocchi
作者
FunBocchi
游戏引擎、图形编程爱好者。正在把 MonoGame 3.8.x 逐行移植为 C++20 并跑在鸿蒙上;也在做 Bocchi House 游戏移植平台与各种经典游戏的 HarmonyOS 移植。
目录
Bocchi House 移植平台 - 这篇文章属于一个选集。
§ : 本文

目标游戏
#

Paladin(仙剑奇侠传),大宇资讯 1995 年的经典中文 RPG——对很多国内玩家来说,它是"国产单机 RPG 的初恋"。

原作以 C 语言编写,社区里有两大参考实现:

  • SDLPal:仙剑奇侠传跨平台重制引擎,用 SDL 重构了原版
  • pal_harmony:社区大佬做的鸿蒙版仙剑移植,为本项目提供了重要参考

移植规划
#

方案
原始语言C
移植语言C++
渲染方式CPU 软件渲染(320x200 原始分辨率)
参考实现SDLPal / pal_harmony
状态规划中

和 Unholy Heights 走 Vulkan GPU 精灵渲染不同,仙剑走的是 CPU 软件渲染 + 320x200 低分辨率路线——这恰好是 90 年代 PC 游戏的原生形态。

软件渲染的好处是不依赖复杂的图形管线:只要有一个能往屏幕像素缓冲区写数据的路径,游戏就能跑起来。在 Vulkan 后端稳定之前,这反而是一条低风险的起步路径。

与 Bocchi House 的关系
#

Paladin 会是 Bocchi House 平台上的第二个移植游戏:

Bocchi House (启动平台)
 ├── Unholy Heights     C# XNA → C++ / Vulkan GPU 2D 精灵   [移植中]
 └── Paladin (仙剑)     C → C++ / CPU 软件渲染 320x200       [规划中]

两个游戏共用平台层的基础设施:game_framework 生命周期桥接、ScreenManager、输入适配器——游戏侧只需要实现自己的 Update/Draw 和资源加载。

现状
#

目前 Paladin 模块在仓库里是骨架状态game_sources/paladin),集成 GameScreen 还是 @Component V1 模板页,未接入渲染组件。

后续完整移植需要适配约 27000 行 C++ 代码——这是个不小的工程,等 Unholy Heights 的渲染管线打通后,会作为第二个项目逐步推进。

Bocchi House 移植平台 - 这篇文章属于一个选集。
§ : 本文

相关文章