# 把游戏移植到另一个引擎

> 没有导入器能读取外来项目并产出一款能跑的游戏。资源以文件形式搬走，逻辑要重写，而设计才是真正的源。

- URL: https://www.summerengine.com/zh/port-a-game-to-another-engine
- Keyword: 移植游戏到另一个引擎
- Related: https://www.summerengine.com/zh/porting

把游戏移植到另一个引擎，意思是在那个引擎里重建一款你拥有的游戏。开放格式的资源可以作为文件搬过去。引擎专有的脚本、场景、预制体和编辑器工具则不行，无论涉及的是哪两个引擎。

这听起来比实际糟。一款完成品里最贵的部分是设计、内容、调校，以及关于什么行得通的认知，而这些全都留得下来。代码通常是最便宜的重做项，因为你是在重新实现一份已知的规格说明，而不是在摸索一个设计。团队重建一款已经跑通的游戏，用时常常比第一次做它更短。

Summer Engine 就是为这次重建而生的。用平常的话描述系统来生成第一版，再用 C++ 或 GDScript 编辑真正的项目，C# 可在桌面编辑器中使用。它兼容 Godot 4 工作流并始终跟随 Godot 上游，同时是带有超过一百万行自定义代码的完全自研引擎。一个项目即可导出桌面版本发布到 Steam 和 itch.io。

## 什么能迁移，什么永远不能

能迁移的：贴图、精灵、音频、字体、glTF 或 FBX 的 3D 网格与动画、本地化表、平衡数据表格，以及作为参考的着色器数学。永远不能迁移的：绑定在某个引擎 API 上的脚本、场景与预制体的序列化、可视化脚本图表、动画状态机、依赖特定求解器的物理调校，以及编辑器扩展。市场资源也可能只授权给某一个引擎，所以复用前先查。

## 把旧项目当成规格说明

打开旧代码，把数值都记下来：移动速度、加速度、重力、跳跃高度、伤害、冷却、生成频率、掉落表、镜头偏移和动画时序。录下原作的视频，并排比对。重建后的游戏之所以感觉不对，是因为数值被估了个大概，而不是因为架构变了。一份写满精确常量的简短文档，是任何移植里价值最高的产物。

## 先做纵向切片，内容放在后面

在做别的之前，先重建一个关卡、一个敌人、玩家控制器、暂停菜单和存档系统。这个切片能证明引擎合适，也能给出对其余部分的真实排期。系统到位之后内容会搬得很快，因为关卡就是数据。先搬内容的团队会在资源上花掉几周，而系统一改，这些资源又得重做。

## 这次移植值得做的理由

常见动机是分成与授权成本、旧引擎够不到的平台目标、构建体积、迭代速度、性能天花板、和团队对着干的工具链，或者一个未来方向已经不匹配项目的引擎。动手之前把理由写下来。它决定了什么必须变好、这次移植才算成功，也能在重建走到枯燥的中段时保住排期。

## FAQ

### 有能在引擎之间转换项目的工具吗？

没有通用的，Summer Engine 也没有。资源文件能转换。游戏逻辑、场景结构和编辑器数据不能。任何号称一键换引擎的东西，最好的结果也是产出一个坏掉的项目。

### 换引擎的移植要多久？

按系统数量衡量，不要按内容量。一款只有一个控制器和几种机制的小游戏，通常是几周。一款带自研工具链和大量内容的大游戏要几个月。把纵向切片做出来，估算就变成真的了。

### 我的资源会丢吗？

只要它们归你就不会。贴图、音频、模型、动画、字体和数据文件都能以标准格式搬过去。市场内容要查授权，因为有些被限制在某一个引擎里。

### AI 能替我完成重写吗？

它能完成第一版的很大一部分。描述每个系统和它的精确数值，Summer Engine 就会生成能跑的场景和脚本，再由你验证和调校。验证由你来做，因为只有你知道原作是什么手感。

### 移植后的游戏手感会一模一样吗？

只要你把数值带过去，并对着录像比对，就会很接近。不同引擎的物理求解器有差异，所以即便纸面数值一致，移动和碰撞也要再调一遍。

[开始重建](https://www.summerengine.com/zh/download)

---

## Machine-readable resources

- Site index for agents: https://www.summerengine.com/llms.txt
- Full inlined content: https://www.summerengine.com/llms-full.txt
- Porting catalog: https://www.summerengine.com/llms-porting.txt
- Structured catalog: https://www.summerengine.com/agent-catalog.json
- Sitemap: https://www.summerengine.com/sitemap.xml
- Developer resources: https://www.summerengine.com/docs
- Summer API (assets from any agent or code; public per-call model prices): https://docs.summerengine.com/api