GameDevMind 系统开发工作流:从想法到验收的 8 阶段闭环与 MVC 落地实践
【免费下载链接】GameDevMind最全面的游戏开发技术图谱(Game Development Map)。帮助游戏开发者们在已知问题上节省时间,省出更多的精力投入到更有创造性的工作中去。项目地址: https://gitcode.com/GitHub_Trending/ga/GameDevMind
在 GameDevMind(游戏开发技术图谱)的「管理能力 → 工作流」板块中,系统开发工作流定义了游戏 UI 交互类系统从想法到验收的完整研发流程:8 个阶段串联起策划、程序、美术、QA 与 Product Owner 的协作链路,每个阶段都有明确的交付物、常见问题与解决方向。读完本文,你能掌握这套工作流的全景划分与职责边界,理解每个阶段的关键文档(需求文档、功能说明、TDD)应包含哪些核心内容,并能借助仓库中可运行的 MVC 示例与 Excel 配表导出工具,把「MVC 分层」「数据驱动配置」「自动化资源集成」等抽象原则落到可验证的代码层面。
工作流全景:8 阶段闭环
大多数游戏包含大量基于 UI 交互的系统玩法(背包、商城、成就、社交等),这类系统的开发需要多个工种、多种工具、按照既定流程协作完成。系统开发工作流的价值就在于为这条链路提供统一语言,确保各角色高效协作、产出高质量的游戏系统。
文档中的全景图如下:
8 个阶段从想法到交付,形成持续迭代闭环,验收后通过迭代反馈回到「想法与目标」,驱动下一轮打磨。各阶段的角色分工概览:
| 阶段 | 主要角色 | 核心交付物 |
|---|---|---|
| 想法与需求 | 制作人/策划 | 价值与目标、体验描述、需求文档 |
| 内容设计 | 策划 | 系统功能说明、UI Layout、流程图、配置表结构 |
| 技术设计 | 程序 | TDD(技术设计文档) |
| 内容制作 | 美术/动画/音效/程序/(外包) | UI、动画、音效资源、配表(元数据) |
| 内容集成 | 程序/美术 | 资源进入工程、命名规范落地 |
| 功能实现 | 程序 | View/Controller/Model 分层代码 |
| 测试验证 | 开发自测 + QA | 自测通过 + 功能/边界/兼容性测试报告 |
| 验收交付 | Product Owner | 体验验收结论、问题反馈与迭代计划 |
阶段一:想法与需求——传递「虚」的目标而非切割好的任务
| 维度 | 内容 |
|---|---|
| 作用 | 系统开发的起始阶段,明确系统的价值和目标 |
| 应用场景 | 新系统开发初期;需求分析;目标明确 |
| 在哪用? | 所有新系统开发的初期阶段 |
这一阶段最容易踩的坑,是过早把需求切割成具体任务。文档给出的问题与解决方向值得逐条对照执行:
| 问题 | 解决方向 |
|---|---|
| 如何让相关开发人员理解系统的价值和目标? | 明确系统价值和目标,清晰传达给开发人员;明确系统体验和感受,清晰传达给开发人员;进行头脑风暴;编写需求文档;组织需求评审 |
| 如何传达系统的体验和感受? | 使用原型演示;使用参考案例;使用体验描述;组织体验评审 |
| 如何避免过度细化任务,保持灵活性? | 交给开发团队的是虚的内容(目标、体验等),而非具体切割好的任务或功能,让开发团队有更多发挥空间;提供目标和体验;避免过度细化任务;保持开发灵活性以应对需求变化 |
要点小结:想法与需求是系统开发的起点;如果有新系统的需要,可以先做个头脑风暴;要能给相关开发人员讲清楚价值和目标、体验和感受;如果是跟游戏内容相关的东西,交给开发团队的最好是「虚的内容」(目标、体验等),而不是具体切割好的任务或功能——这样才能为后续需求变化保留发挥空间。
阶段二:内容设计——功能说明、Layout/流程设计、数据驱动配置
| 维度 | 内容 |
|---|---|
| 作用 | 策划设计系统功能、UI 布局、操作流程和配置数据 |
| 应用场景 | 系统开发的策划设计阶段;功能设计;UI 设计;数据设计 |
内容设计是整个系统开发的基础,其产出直接决定程序与美术的工作量。文档将这一阶段的问题拆为四类:
| 问题 | 解决方向 |
|---|---|
| 如何清晰地表达系统功能? | 编写系统功能说明,明确文档读者(程序、QA),清晰描述系统功能、交互逻辑、边界条件;使用图表辅助说明;组织功能评审 |
| 如何设计 UI 布局和操作流程? | Layout(图)设计:策划直接在游戏引擎中搭建 UI 布局、放置 UI 部件(使用占位图),可能需要程序协助;若不能使用引擎,则在原型工具中制作 Layout,由程序完成初始搭建。流程(图)设计:设计操作流程、使用流程图,明确文档读者(程序、QA)。组织 UI 评审 |
| 如何设计数据驱动的配置? | 设计配置表结构,实现数据驱动开发;优化配置管理 |
| 如何确保各方理解一致? | 策划与程序、美术充分沟通,组织设计评审;进行技术沟通和美术沟通,确保各方理解一致 |
其中「数据驱动的配置」在仓库中有可直接运行的配套实现。GameDevMind 的code/gamedevmind/4.生产能力/4.2.3.游戏数据文件/excel_to_json/演示了手游常见的Excel 三行表头 + JSON 导出流水线,正好对应内容设计阶段「设计配置表结构,实现数据驱动开发」的落地形态:
- 表头约定:第 1 行是字段名(JSON key),第 2 行是类型(
int/float/string/bool),第 3 行是中文注释(导出时忽略),第 4 行起为数据行; - 默认导出为
{ "1001": { ... }, "1002": { ... } }的字典结构,便于客户端按 id 查找; - 快速运行方式:
cd excel_to_json pip install -r requirements.txt python create_sample.py # 生成 sample/hero_config.xlsx python excel_to_json.py # 导出 output/hero_config.json该实现见 excel_to_json.py,其 README 还给出了生产环境扩展方向:多 Sheet → 多 JSON 文件、导出前跑校验(唯一 id、外键引用)、接入 Git diff 做策划表变更 review(见 README)。这类配表工具就是内容设计阶段「设计配置表结构」到内容制作阶段「制作系统所需的配表(元数据)」之间的桥梁。
阶段三:技术设计——写关键问题,避免事无巨细
| 维度 | 内容 |
|---|---|
| 作用 | 程序进行技术方案设计,明确实现路径 |
| 应用场景 | 系统开发的技术设计阶段;技术方案设计;架构设计 |
技术设计阶段的产出是一份 TDD(技术设计文档)。文档对此给出两条原则:
| 问题 | 解决方向 |
|---|---|
| 如何设计技术架构? | 编写 TDD 文档(技术设计文档),包含:相关的类及职责、关键流程及步骤、关键技术选型及方案 |
| 如何平衡设计文档的详细程度? | 写关键问题即可,避免事无巨细浪费时间和失去焦点;重点关注架构设计、关键技术难点、接口设计等核心内容 |
要点即:技术设计是系统实现的基础;设计合理的技术架构;写关键问题,避免事无巨细;重点关注架构设计、关键技术难点、接口设计等核心内容。对 UI 类系统而言,TDD 里最关键的部分往往就是后文「功能实现」阶段要用的 MVC 分层与表现/逻辑对接接口。
阶段四:内容制作——UI、动画、音效与外包的规格治理
| 维度 | 内容 |
|---|---|
| 作用 | 美术、程序、策划协作制作系统所需的各种内容 |
| 应用场景 | 系统开发的内容制作阶段;UI 制作;动画制作;音效制作 |
内容制作是典型的多角色协作阶段,文档按「协调制作」「外包管理」「规格保证」三个问题组织:
| 问题 | 解决方向 |
|---|---|
| 如何协调 UI、动画、音效的制作? | UI 制作-美术:基于前期 UI 主题设计素材搭建新页面,制作美术资源并确保规格符合;UI 制作-动画:设计页面切换和部件动态效果,制作动画资源并确保规格符合;UI 制作-音效:设计音效配合动画效果,制作音效资源并确保规格符合;UI 制作-程序:在引擎中设置对象属性和参数;若策划不能搭建 Layout,程序根据策划 Layout 搭建所有对象。协调制作进度,确保规格一致,组织制作评审 |
| 如何处理外包内容制作? | 让第三方(外包)团队制作具体内容(图标、角色、原画、音效等);编写详细需求说明:图标需明确命名、格式、规格、风格,动画需明确工具、版本、动作描述;管理外包流程,验收外包内容 |
| 如何确保内容规格符合要求? | 制作系统中所需的配表(元数据),确保数据正确;建立规格标准;实现规格检查;组织规格评审 |
要点:内容制作需要多角色协作;协调 UI、动画、音效的制作进度;处理外包内容制作需要详细的需求说明;确保内容规格符合要求。「规格标准 + 规格检查 + 规格评审」三件套是这一阶段质量治理的核心。
阶段五:内容集成——人工规范与自动化两条腿走路
| 维度 | 内容 |
|---|---|
| 作用 | 将制作好的内容资源集成到游戏工程中 |
| 应用场景 | 内容制作完成后的集成阶段;资源集成;工程配置 |
| 问题 | 解决方向 |
|---|---|
| 如何确保资源正确放置和命名? | 人工集成:把资源放到正确目录、使用正确命名;更新 UI 对象的图素;每个团队协商好由谁负责;建立资源和命名规范,实现资源检查,明确责任分配 |
| 如何提高集成效率? | 开发自动化辅助功能,实现自动(或一键)将资源集成到游戏工程中,提高效率、减少人为错误 |
「自动化集成」方向在仓库中有一份可运行的管线模拟实现:asset_pipeline.py 演示了「原始资源 → 检查 → 转换 → 压缩 → 输出」的完整阶段划分——资源发现(扫描原始目录)、格式验证(检查扩展名、文件头)、格式转换(纹理 → ASTC/DXT、模型 → glTF)、压缩打包(LZMA 压缩、依赖分析)、输出清单(生成导入报告),纯标准库即可运行。从源码结构看,这套「发现—验证—转换—打包—报告」的管线骨架,正是内容集成阶段「开发自动化辅助功能、减少人为错误」原则的一个具体形态;其中的校验与报告环节也呼应了内容制作阶段「实现规格检查」的要求。
阶段六:功能实现——MVC 分层与「先框架后内容」
| 维度 | 内容 |
|---|---|
| 作用 | 程序实现系统的功能逻辑和表现 |
| 应用场景 | 系统开发的核心实现阶段;功能开发;逻辑实现;表现实现 |
功能实现是系统开发的核心,文档给出三条组织代码的方法:
| 问题 | 解决方向 |
|---|---|
| 如何组织代码结构? | 推荐先写框架(类、方法及注释),再实现内容,有助于对系统宏观把握;设计代码结构,实现框架代码,逐步实现功能 |
| 如何实现 View、Controller、Model 的分离? | 推荐使用 MVC 框架:View 层负责 UI 对象组织、确定动态表现、实现 UI 逻辑;Controller 层负责与后端约定接口、设计前端接口、实现业务逻辑;Model 层负责元数据/配表数据、各对象数据的管理 |
| 如何处理表现和逻辑的对接? | View(表现)开发:内容集成、动态效果实现(过渡/显示/隐藏/操作动画)、表现内容与数据的对接、表现内容与业务逻辑的对接;Controller(逻辑)开发:管理数据显示与刷新、处理系统间交互与响应;设计表现逻辑接口,优化对接性能 |
要点:功能实现是系统开发的核心;先写框架再实现内容有助于宏观把握;使用 MVC 框架实现代码分离;处理好表现和逻辑的对接。
仓库提供了一个可直接运行的 MVC 终端演示 mvc_demo.py,与文档描述的三层职责一一对应,适合作为阅读本阶段内容时的参照实现:
- Model(
CharacterModel/ObservableModel):持有角色状态(HP、等级、位置、背包),提供move/take_damage/heal/gain_exp等业务方法,是纯数据 + 业务规则,不依赖任何 UI;ObservableModel扩展了观察者列表(attach/detach/_notify),在数据变化时通知 View,这正对应文档 Model 层「各对象数据的管理」以及 View 层「数据显示与刷新」的对接方式; - View(
ConsoleView):构造时自动model.attach(self)注册为观察者,on_model_changed触发render重绘角色面板——纯展示,不修改 Model,对应文档「View 层负责 UI 对象组织、确定动态表现、实现 UI逻辑」; - Controller(
InputController):用COMMANDS字典把输入(w/s/a/d/f/h/k/i/q)映射到 Model 方法,逐帧解析命令并执行,对应「Controller 层处理交互与响应」。
python3 mvc_demo.py运行后按键操作即可看到 Model 变化经观察者通知驱动 View 重绘的完整链路。这个演示规模很小,但它把「先写框架(Model 类与观察者接口)→ 再实现内容(具体命令与渲染细节)」的节奏体现得很清楚。
阶段七:集成测试——开发自测先行,QA 全面覆盖
| 维度 | 内容 |
|---|---|
| 作用 | 测试系统功能的正确性和完整性 |
| 应用场景 | 功能实现完成后的测试阶段;功能测试;集成测试;质量保证 |
| 问题 | 解决方向 |
|---|---|
| 如何确保测试覆盖全面? | QA 进行更全面的测试,包括功能测试、边界测试、兼容性测试等;设计测试用例,实现测试覆盖,优化测试质量 |
| 如何提高测试效率? | 开发团队优先自测功能,确保基本功能正常后再交给 QA,减少无效测试;实现自测机制,优化测试流程 |
要点:集成测试是质量保证的重要环节;开发团队优先自测功能,然后交给 QA;QA 进行更全面的测试;提高测试效率和质量。自测环节建议对照功能说明文档(阶段二的产出)逐项勾验,因为功能说明中已明确要求描述交互逻辑与边界条件,天然可以转化为自测 checklist。
阶段八:验收——Product Owner 从产品角度验收体验
| 维度 | 内容 |
|---|---|
| 作用 | 最终验收系统是否符合预期 |
| 应用场景 | 测试完成后的验收阶段;功能验收;体验验收;质量验收 |
| 问题 | 解决方向 |
|---|---|
| 如何判断系统是否符合预期? | Product Owner(制作人/策划)从产品角度验收功能体验,检查是否符合设计预期、体验是否良好;建立验收标准,进行体验验收和功能验收 |
| 如何处理验收中的问题? | 验收中发现的问题反馈给开发团队,进行迭代优化,持续打磨系统;建立问题反馈机制,实现迭代优化 |
要点:验收是系统开发的最后环节;Product Owner 验收功能的体验;如果有问题,反馈给团队继续打磨;持续迭代优化系统。验收结论经「迭代反馈」回到全景图的起点,构成持续迭代闭环。
AI Coding 协作速查:把 8 阶段转成提示词
文档为各阶段提供了 AI Coding 指南。结合 阅读说明 - AI Coding 总览 的约定,这类指南包含三类内容:交互提示(如何向 AI 描述需求)、方法(与 AI 协作的流程与注意事项)、应用(可交给 AI 的具体任务场景)。以「验收」阶段的指南为例:
| 类型 | AI Coding 指南 |
|---|---|
| 交互提示 | 说明需求;如「验收」「Product Owner」「体验」「迭代」 |
| 方法 | 让 AI 设计验收标准、问题反馈与迭代流程 |
| 应用 | 功能验收、体验评审、迭代优化 |
| 提示词范例 | 「系统开发验收需 PO 从产品角度验收体验,请设计验收标准 checklist、问题反馈机制与迭代优化流程」 |
全部阶段的提示词范例要点如下,可直接作为提示词模板使用:
| 阶段 | 提示词范例要点 |
|---|---|
| 想法与需求 | 「新系统需头脑风暴产出需求文档,请设计价值/目标/体验传达框架,避免过度细化任务」 |
| 内容设计 | 「策划需输出功能说明、UI Layout、配置表结构,请设计文档模板与评审 checklist」 |
| 技术设计 | 「程序需写 TDD:类职责、关键流程、技术选型,请设计架构要点文档骨架(避免事无巨细)」 |
| 内容制作/集成 | 「UI/动画/音效多角色协作,请设计规格标准、外包需求说明与自动化集成流程」 |
| 功能实现 | 「系统用 MVC 实现,请设计 View/Controller/Model 分层骨架与表现逻辑对接接口」 |
| 集成测试 | 「开发自测后交 QA,请设计自测 checklist 与功能/边界/兼容性测试用例模板」 |
使用时的前提与限制:这些提示词是「流程文档生成类」的通用模板,适合产出 checklist、评审清单、文档骨架等结构化文本;涉及具体引擎(如 Unity)的 Layout 搭建、引擎内资源集成等执行类工作时,仍需在真实工程环境中按引擎约定完成,仓库中的示例(如 mvc_demo.py 为标准库终端演示、excel_to_json 面向 Excel/JSON 配表)可作为骨架参照,但不等于生产环境完整实现。
延伸阅读
- 上级文档 5.1.工作流:研发与内容流程管理的角色、交付物、评审、验收和反馈机制总述,并指向 5.1.2.UI 制作工作流 与 5.1.3.更多开发工作流;
- MVC 终端演示:功能实现阶段的 Model/View/Controller 分离与观察者通知链路;
- Excel → JSON 配表导出:内容设计/内容制作阶段数据驱动配置的落地流水线;
- 资源导入管线模拟:内容集成阶段自动化管线(发现、验证、转换、打包、报告)的参考实现;
- 阅读说明 - AI Coding 总览:AI Coding 指南三类内容(交互提示/方法/应用)的通用约定。
【免费下载链接】GameDevMind最全面的游戏开发技术图谱(Game Development Map)。帮助游戏开发者们在已知问题上节省时间,省出更多的精力投入到更有创造性的工作中去。项目地址: https://gitcode.com/GitHub_Trending/ga/GameDevMind
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考