返回

用 Claude、Tripo 和 Godot 制作 3D Boss 战

2026.10.2110 分钟阅读工作流

01 / 概览

概述

我的起点是一个围着红围巾的男孩和一座荒无人烟的 1980 年代美国小镇。一尊没有面孔的雕像把建筑撕离地面,抛向天空。这个想法最终变成了用 Godot 制作的可游玩的第三人称动作演示。

Claude 帮忙规划、编写脚本和测试;Tripo 提供概念图、模型、绑定和动画。我负责指导项目,并在 Godot 中检查组装后的游戏。

这种实践方式也体现了将创意、AI 辅助开发和可玩测试连接起来的 vibe gaming 工作流。

项目配置:

  • 引擎:Godot 4.7.2,Forward+
  • AI 编程助手:Claude Code
  • 图像生成:Tripo 图像生成
  • 3D 生成:Tripo P 系列和 H 系列模型
  • 项目:The Red Scarf,一款简短的第三人称 Boss 战演示
《The Red Scarf》:可游玩的 Boss 战。
《The Red Scarf》:可游玩的 Boss 战。
在线试玩 The Red Scarfvibe gaming 教程

02 / 概览

完成后的演示玩起来是什么样

男孩沿着 Main Street 进入小镇。广场上,一尊没有面孔的雕像释放冲击波,把建筑拉到空中,在自己周围组成螺旋。

玩家通过跳跃、悬浮和围巾跃迁攀上漂浮的商店。弹反发光投射物会短暂击破雕像的护盾;投掷附近的物体则能造成伤害。经过三轮战斗,男孩便能抵达雕像身边,将其封印。

《The Red Scarf》实机演示。

03 / 概览

配置工具和项目

为 Claude 建立项目记忆

我把 Godot 项目、设计文档、概念图、Tripo 模型和脚本放在一起。根目录下的 CLAUDE.md 记录了 Claude 在不同会话中都应遵守的规则。

其中包括这些基本要求:

  • 描述游戏、基调和视觉方向。
  • 列出资源规则,例如风格一致,以及不出现多余符号或文字。
  • 大幅修改前必须先制定计划。
  • 保存提示词历史。
  • 发现反复出现的问题和项目约定后,及时记录。

我把反复用到的修复也补进同一个文件:网格顶点绕序、模型朝向、动画名称,以及围巾跃迁的目标规则。后续会话就能复用这些经验。

安装 Tripo CLI

为了让 Claude 连接 Tripo,我让它安装 Tripo CLI:

项目提示词
帮我安装并配置 Tripo CLI:npm install -g tripo-cli
Tripo CLI 文档

连接 Godot 和 Claude

Claude 可以直接编辑以文本保存的 Godot 场景和 GDScript。通过 Godot MCP 连接,它还能运行游戏、截图、检查日志并模拟输入。

我让 Claude 报告当前打开的场景和节点树,再对照自己的配置检查 MCP 端口和项目,以此验证连接。

项目提示词
比较当前可用的 Godot MCP 服务器,选择最适合这个项目的一款(Godot 4.7、Claude Code、编辑器控制,以及运行和检查游戏)。
说明选择理由,然后将它安装到 the_red_scarf/,并在项目级别配置(项目根目录中的 .mcp.json)。关闭遥测。

04 / 概览

把创意缩减为可测试的游戏

先写设计,再精简

Claude 的第一版设计涵盖了小镇、移动、Boss 攻击和关卡流程,但对一个简短的演示而言,阶段和围巾能力都太多了。

项目提示词
我要用 Claude、Tripo 和 Godot 制作一个游戏演示。构想如下:

玩家是一个男孩,戴着鲜红的围巾,穿灰色连帽衫、蓝色牛仔短裤和亮黄色篮球鞋。围巾具有超自然力量:男孩可以用它悬浮、在平台间快速移动、抓取并投掷物体,还可以把它当鞭子使用。
游戏从一座美国 20 世纪 80 年代中期小镇的主街开始:一条主路,两侧是住宅和商店(邮局、体育馆、餐馆等)。中央广场上立着一尊身穿西装、面容被抹去的男子雕像。它是一个充满敌意的超自然物体。男孩到来时,雕像释放冲击波并缓缓升空。周围房屋被从地面掀起,成为不同高度的漂浮平台。玩家在其间跳跃,挡下雕像用念力掷来的物体,反击雕像,最后抵达雕像并用围巾将其封印。

在 design/game_design.md 中写一份简短的设计文档:建筑类型、Boss 的两个阶段的攻击、男孩的攻击、防御和移动动作,以及关卡流程。
先向我展示计划。如有不清楚之处,请提问。

我把它压缩为仍能保留这款游戏特色的最小循环:

项目提示词
简化战斗:
1. Boss 只有一个阶段。
2. 移除围巾护盾和围巾鞭子。
3. 新的循环:玩家穿越漂浮的建筑,只有招架雕像的攻击(鼠标右键 / RT,类似格斗游戏中的招架)才能打破它的护盾。护盾解除后,玩家向雕像投掷物体造成伤害。

我把战斗缩减为一个 Boss 阶段:弹反击破护盾,在敌人暴露时投掷物体,并把漂浮小镇作为移动挑战。保留下来的每个动作都必须服务于这一循环。

用数据构建小镇

Claude 编写了一个 Node 脚本,为椭圆形小镇生成参数化 SVG:包含 Main Street、十二家商店、住宅道路、公园、停车场和广场。

同一个脚本还为 Godot 的灰盒、建筑、道路、路灯和树木导出 JSON。因此,概念图与可游玩的关卡共用一套布局。

我每次只调整一个参数,例如停车场大小、后院深度或商店入口,这样每项变化都便于检查。

项目提示词
我设想的小镇布局如下。街道网格位于一个椭圆轮廓内:
- 椭圆长轴是最宽的街道 Main St,两侧是邮局、体育馆等功能性建筑。
- 其他街道从 Main St 两侧垂直延伸,两旁排列住宅。
- 椭圆中心是圆形广场;雕像位于中央的混凝土基座上。
- 沥青街道有车道标线。商店前是抬高的混凝土人行道,美洲红梣行道树等距排列。

设计小镇结构,补充我未提及的细节并改进设计。
使用 Node 脚本(tools/townplan/gen_town_svg.mjs)绘制俯视平面图,让它根据文件开头的参数生成 SVG。
作为布局依据的参数化城镇平面图。
作为布局依据的参数化城镇平面图。

确立视觉方向

我以布局为严格参考制作俯视插画,保留道路、地块、建筑轮廓、树木和小镇边界。

第一张 45 度视角图看起来像一张倾斜的地图。我先在本地旋转参考图,再重新生成,才得到可信的观察角度。

项目提示词
严格参照 image[1] 的布局。所有道路、街区、建筑占地轮廓、地块、公园、停车场、树木和椭圆外框都必须与 image[1] 完全一致。北方朝上。不得添加、删除、移动或调整任何元素大小。只将它重新绘制为一幅完成度高的俯视正交插画,呈现秋季宁静的美国 20 世纪 80 年代中期小镇。

[……小镇内容:主街、环岛和雕像、十二栋仅以平屋顶呈现且都朝向主街的商店、住宅、公园、停车场、红梣树、水塔……]

风格:风格化的非写实游戏环境,简洁鲜明的硬边几何形体,略微夸张的平涂色彩,轻微旧化,不要污垢。西方的暖色午后阳光。

不要车辆、人物、文字、字母、旗帜或国家、宗教符号。雕像没有面孔。

根据最终平面图和鸟瞰图,Claude 列出资源清单,并区分 Tripo 模型和用 Godot 构建的对象。通过设置面数档位,大约三十张概念图和三十个模型都控制在预算内。

项目提示词
小镇概念图已经完成。根据最终平面图(v6),列出所需的每一项资产,分为“用 Tripo 生成”和“在引擎中制作”两类。然后在 design/asset_prompts.md 中为每个 Tripo 资产编写概念图提示词。
- Main St 上的商店应更加多样,建筑高度要明显不同,让开场步行时的天际线更有趣。
- 按重要性和大小将场景资产分为 S / A / B / C 四档,为每档指定模型和三角面预算(每项资产硬性上限 10,000),并估算整个场景的总量。
城镇的鸟瞰风格参考图。
城镇的鸟瞰风格参考图。

05 / 概览

先验证一个资源,再制作其余部分

测试一栋有代表性的建筑

我先用一家超市测试整个流程,检查视觉风格、能否作为建模参考,以及适合使用哪一类 Tripo 模型。

  • 概念图是否符合小镇的视觉方向?
  • 图片是否提供了干净清晰的建模参考?
  • 哪个 Tripo 模型系列能生成所需的几何结构?

第一张图中能看到货架、烘焙在图像里的暖光、带有品牌感的自动售货机,以及过大的地基。

我更新了共用规则:用木板封住窗户、关闭灯光、使用中性白光作为参考照明,并让地基与墙面齐平。

项目提示词
仅将 image[1] 用作配色、材质和渲染风格的参考。不要复制其内容或机位。

一栋独立的 20 世纪 80 年代中期小镇单层超市:宽而低的盒形建筑,宽约 16 米、深 14 米、高 5 米。正面是一长排大型落地玻璃窗,中间有一对玻璃门,上方是平直的红白条纹金属雨棚。雨棚上方有一块横贯整个屋顶边缘的高大平面招牌板,涂有醒目的色带和简洁的购物车图案,没有字母。淡黄色涂漆砖墙、平屋顶,屋顶上有两台方形空调机。门旁立着一台普通的红色自动售货机。所有窗户和玻璃门都用风化木板封住,看不到室内。所有灯光、招牌灯和霓虹灯管都已关闭。建筑坐落在一块薄而平的混凝土板上,板的尺寸与建筑占地完全一致,四周与墙面齐平。

从略高处观察的正面四分之三视角,整栋建筑完整入镜,居于纯浅灰色背景中央;中性白色日光,均匀柔和的照明,无暖色调、投射阴影或底板之外的地面。

风格:简化的写实风格,形体干净、边缘分明;美国 20 世纪 80 年代中期风貌,略饱和的漫画式色彩,轻微旧化,不要污垢。

不要文字、字母、标志、旗帜、国家或宗教符号,也不要人物或车辆。
初版 MART 概念图初版 MART 概念图
修订后的 MART 概念图修订后的 MART 概念图

扩大制作规模前,先比较模型系列

在使用同一张超市图片并控制面数上限的情况下,P 系列生成的硬边更干净;H 系列的三角形分布更均匀,表面也更柔和。

针对这款游戏,我选择:

  • 建筑、车辆和适合使用干净硬表面的道具采用 P1.0。
  • 雕像和漂浮地块等有机形态采用 H3.1。
  • 男孩采用 P2.0,因为角色绑定需要干净的拓扑。

这是针对这款游戏的选择,并不是通用的模型排名。

在 Godot 中对比 H 系列与 P 系列的 MART 模型。
在 Godot 中对比 H 系列与 P 系列的 MART 模型。
项目提示词
目前的模型都很干净,也比较平面化。考虑到性能,P1.0 是否比 H3.1 更适合建筑?做一次对比:用 P1.0 生成 4000 个面数的 MART,用 H3.1 生成 6000 个面数的 MART,把两个模型导入测试文件夹,从店面、正面、转角和俯视角度并排渲染(着色视图和线框视图)。然后告诉我应该用哪个以及原因。

生成其余场景资源

原型通过检查后,我才生成其余资源。每个资源都有类别、文件夹、模型预设和面数预算。

批量处理有三项检查:

项目提示词
参照 MART 的做法,使用 design/asset_prompts.md 中的提示词,以 cpt/town_birdseye.png 为风格参考,为所有剩余的场景资产生成概念图。
先检查余额。将每张图片保存到 cpt/assets/<category>/ 下。
按 asset_prompts.md 中的检查清单核对每张图片(单个物体、干净背景、无文字或符号、符合俯视图风格、没有细而易损的部件)。
仅逐项重试失败任务;绝不要重新运行整个批次。
在 design/batch_checkpoint.md 中记录进度,以便中途停止后恢复。
完成后列出成功、失败以及需要我审核的项目。
  • 检查每张图是否只有一个物体、背景干净、没有意外文字,也没有脆弱的细小部件。
  • 单独重试失败任务。
  • 在检查点文件中记录进度。

我单独重新生成了失败资源:后墙破洞的加油站、缺失的水塔,以及几何结构松散的超市。

场景资产概念图。
场景资产概念图。

单独制作角色

男孩需要经过概念设计、建模、绑定检查、骨骼绑定和动画重定向。我把围巾单独处理,避免不需要的蒙皮权重,并保留它完成复杂动作的能力。

项目提示词
一个卡通风格的全身男孩,呈标准 T 字姿势,双臂水平伸展,双腿伸直。他穿着灰色连帽衫,帽子戴在头上。脸隐没在阴影中,眼睛不可见,只露出嘴巴和灰棕色刘海。脖子上围着长长的红色围巾,两端都从背后垂下,不垂在胸前。他穿深蓝色牛仔短裤,裤脚止于膝盖上方,露出膝盖;左右两侧都有带纽扣的翻盖口袋。他穿着大号黄色运动鞋,腿比较细。卡通角色设计,干净的 3D 模型。

我先运行了免费的绑定检查。动画清单包括待机、行走、奔跑、跳跃、下落、投掷、弹反、围巾跃迁、受击、战败、封印和胜利。同时重定向超过五个动画会失败,因此我拆成三个较小的任务,再在 Godot 中合并。

项目提示词
男孩模型已准备好,路径是 models/boy/boy_body.glb。为它绑定骨骼,并添加演示所需的动画。先运行免费的绑定检查。在生成任何内容前,列出计划使用的动画及其对应的 Tripo 预设。

批量处理前,我手动检查了角色的各个视角,确认没有镜像错位的手,也没有被误认为墨镜的头发。

建模与绑定前的男孩角色概念图。
建模与绑定前的男孩角色概念图。

统一导入和质量检查

导入步骤为看起来过于柔软的墙面添加了加权法线和硬边。纹理限制按资源而异,男孩、围巾、雕像和树木则有例外设置。

把模型从测试目录移入可游玩场景之前,我检查了比例、朝向、墙壁、屋顶和多余的多边形。正式资源的检查报告必须为零问题。

项目提示词
检查模型时,我发现法线在所有边缘都被平滑处理,导致平坦的墙面显得柔软而廉价。我想要类似 Blender 的 Weighted Normal 修改器的效果。
编写一个 Godot 导入钩子,在导入时重新计算加权法线(按面积加权,锐于 30 度的边缘作为硬边,保留法线贴图);再编写配置脚本,将该钩子附加到一组 GLB,并通过 VRAM 压缩限制纹理尺寸(4K,小型资产为 2K)。不要将其应用到男孩、围巾、雕像或树木。
渲染处理前后的对比图,以便我判断效果。

06 / 概览

分层构建演示

从可游玩的灰盒开始

一个 Godot 工具脚本读取小镇 JSON,生成可游玩的灰盒,其中包含带颜色的碰撞盒、地面、出生点和漂浮布局。数据变化后,可通过检查器控件和命令行脚本重新构建。

随后,Swap In Models 在相同位置用 Tripo 资源替换方块。两个版本使用同一套布局数据。

商店组成可攀爬的螺旋,住宅留在背景中。一份报告检查了重叠、头顶空间、屋顶间距和平台是否可达。

玩法灰盒场景玩法灰盒场景
使用 Tripo 模型替换后的同一布局使用 Tripo 模型替换后的同一布局
项目提示词
构建一个只包含玩法的灰盒场景:
- 将小镇平面图导出为 JSON(gen_town_svg.mjs --json),编写一个 @tool 脚本(Scripts/town/town_builder.gd),读取数据并生成地面、每栋商店和住宅对应的带碰撞的彩色盒体(高度来自设计文档),以及位于西侧入口的玩家出生点。
- 添加检查器按钮:Build Town、Preview Tree、Reset To Ground、Swap In Models。
- 再添加一个命令行构建脚本,以便无界面重建场景。
- Swap In Models 会用 res://Assets/Models/<model>.glb 替换各个盒体,缩放到相应地块尺寸,旋转使其面向街道,同时保持原有位置。
向我展示街道视角和俯视视角的截图。

添加移动和程序化围巾

控制器包含地面、空中、悬浮和围巾跃迁状态。开放的参数设置和冒烟测试帮助我调节并检查每个动作。

项目提示词
在灰盒场景中开始制作玩家控制器。直接使用已绑定骨骼的男孩模型,不要用胶囊体占位。
- CharacterBody3D 具有地面、空中、悬浮(空中按住跳跃键,消耗围巾能量)和围巾飞跃状态。
- 第三人称越肩相机,支持键盘加鼠标和手柄的输入映射。
- AnimationTree 状态机由生成脚本(Scripts/tools/build_player_scene.gd)构建,不要在编辑器中手动搭建。
- 导出所有手感参数,方便我在检查器中调整。
- 编写自动化冒烟测试:生成玩家,让玩家奔跑、跳跃、悬浮并进行围巾飞跃,保存截图。

用模型制作的颈部围巾看起来太僵硬,因此围绕脖子的部分和垂尾都改由代码生成。同一条垂尾能够悬挂、伸展、抓取、缠绕雕像和松开,无需分别制作模型或动画。

第一版围巾看起来内外翻转,原因是三角形绕序和法线翻转。Claude 修复了网格,并在 CLAUDE.md 中记录原因。

项目提示词
颈部围巾看起来太僵硬。尝试以程序化方式生成,不要使用 Tripo 模型:
- ScarfWrap:三圈厚实柔软的针织围巾围绕颈部,每帧根据颈、头和脊椎骨骼重新构建;由头、颈、胸和上臂的胶囊体向外推开,背部更饱满,以填补帽兜与肩膀之间的空隙,并加入轻微的弹性滞后。
- ScarfTail:一条从背后结点垂下的 Verlet 链条,具有厚度和足够刚性,不会被拉长,且与身体胶囊体碰撞。伸出抓取道具、悬挂在锚点以及缠绕雕像,都使用同一条尾部(reach(point) / release())。
- 两者共用一种带红色针织纹理的羊毛材质,在掠射角呈现柔和光泽。
保持较低的逐帧开销,并告诉我测得的耗时。
在 Godot 中检查程序化围巾缠绕效果。
在 Godot 中检查程序化围巾缠绕效果。

让围巾跃迁更有目的感

最初的围巾跃迁像抓钩一样摆荡。我把它改为朝选定的落点加速移动,并添加红色光晕、灰尘、拖尾和落地脉冲,让动作更容易辨认。

早期位于遮雨棚上的目标点会让男孩穿过建筑或卡住。我加入了落点和飞行路径检查。有效目标点必须满足:

  • 位于真实的屋顶边缘;
  • 上方有足够净空;
  • 留有角色站立的空间;
  • 飞行路径不会穿过目标建筑。

报告从十二个方向检查每栋建筑,并要求无效跃迁点数量为零。

项目提示词
调整围巾飞跃的手感。现在它像蜘蛛侠一样摆荡。相反,男孩应当明确知道目的地,直线飞向目标。移动时旋转模型,让双脚指向目标,仿佛双脚正把整个身体拉过去。
围巾飞跃时不要显示围巾,改用特效表现力量:起跳时出现红色光晕,起点扬起一阵尘土并产生小型能量脉冲,沿一条小弧线留下轨迹;落地时光晕消退,并在接触点形成小型冲击波。
速度不恒定:开头稍慢,随后急剧加速,直到抵达前都不减速。
最终版的围巾飞跃动作:跃向屋顶边缘。
最终版的围巾飞跃动作:跃向屋顶边缘。

串起 Boss 战

流程包括主菜单、开场、小镇升空、检查点、三段 Boss 战和结局。

雕像会投掷物体,其中有一种发光物体可以弹反。弹反会使护盾打开约七秒。后续攻击加入扇形齐射和像陨石一样落下的汽车,同时通过可见性检查阻止投掷物穿过建筑。

项目提示词
完成首个完整版本的所有可玩内容:
- 基础主菜单、暂停菜单和带按钮的结局画面。
- 开场:“The Oval Town” 标题卡;玩家进入广场时,雕像震动、离开基座升空,出现“The Statue”标题卡,随后冲击波把男孩沿地面推开。建筑飞起,汇入螺旋树状结构。此段结束处设置一个检查点。
- Boss 战:护盾、约 0.25 秒的招架窗口、约 7 秒的破盾暴露窗口;仅在暴露期间被投掷物击中才受伤;3 段生命值;根据剩余生命值解锁单体投掷、扇形齐射(只有发光的一枚可以招架)和汽车流星雨等攻击。
- 封印:生命值降至 0 时,雕像上出现围巾飞跃目标点;飞跃过去并反复按下封印按钮。
- 自动化全流程测试:完成游戏全程,实际执行一次招架、三轮投掷、一次死亡与重新开始、封印和结局,并在每个阶段保存截图。
先向我展示计划,再开始构建。

生命值归零时,雕像上会出现围巾跃迁目标。玩家反复按下封印键填充圆环;停止按键则会让进度下降。

雕像的护盾已激活雕像的护盾已激活
成功招架后会开启伤害窗口成功招架后会开启伤害窗口

07 / 概览

打磨、测试和导出

完善场景表现

战斗能够正常运行后,我加入地面细节、草、树、照明、后期处理和特效。一套柔和的加法混合着色器,让光晕、圆环、投射物和拖尾保持一致的外观。

项目提示词
打磨:根据概念图为小镇其余部分补充最终细节(街道、公园、车道标线等)。如果细节缺失或不明确,先为小镇局部生成参考图。
街道布局和标线应尽可能合理;如有需要,可用 Tripo 生成纹理。道路表面绝不能闪烁。
在草坪上加入 NPR 风格的程序化草地。

我从玩家摄像机视角检查修改,排查闪烁的道路、被堵住的门和位置错误的路灯。

项目提示词
使用 ACES 色调映射渲染。添加后期处理:辉光、环境光遮蔽、SSIL、景深、胶片颗粒、运动模糊、色差、FXAA,以及 FSR 2 选项,并全部放进 Options 菜单。辉光、AO、SSIL 和 DOF 提供 Off / Low / Medium / High;FSR 2 提供 Off / Native AA / Quality / Balanced / Performance;运动模糊、色差和胶片颗粒为开关选项。
还要添加 VSync 和分辨率设置。
胶片颗粒应尽量模拟 Super 8 胶片。Godot 没有内置胶片颗粒或运动模糊,因此请将它们实现为 Compositor 特效。
Main Street 润色前Main Street 润色前
Main Street 润色后Main Street 润色后

添加音频和界面反馈

我最初使用合成音频,后来把大部分替换为注明出处的 CC0 音乐和音效。找不到合适片段的地方仍保留合成声音。

项目提示词
寻找 CC0 音乐和音效,替换合成生成的素材。音乐风格应为合成器浪潮 / 模拟合成器。优先考虑较冷门的来源,让游戏更有特色。找不到合适素材时保留原有合成音效。逐个页面核对许可协议,并生成鸣谢文件。

HUD 会按当前情境显示操作提示,直到玩家使用过相应动作。第一次发光投掷攻击会短暂减慢时间,引导玩家学习弹反。

项目提示词
在每个动作首次需要使用时加入交互提示(移动、跳跃、悬浮、冲刺、突进、围巾飞跃、抓取、投掷、招架),让操作引导更明确、直观。每条提示应持续显示,直到玩家实际完成该动作,然后标记为完成。
键盘与手柄的首次操作提示。
键盘与手柄的首次操作提示。

运行完整回归检查

导出前,Claude 重新构建场景、运行报告,并从菜单一路玩到结局,过程中完成真实弹反、死亡与重启、封印以及截图。

项目提示词
导出前进行完整检查:
1. 依次重新运行所有生成器(build_blockout --float --swap、build_player_scene、build_game),并确认主场景是主菜单。
2. 运行所有报告(tree_report、grapple_point_report、street_report、lamp_probe、audio_probe、skin_gap_report)及两项自动化测试。所有项目必须通过。
3. 通过 MCP 从主菜单玩到结局,逐阶段截图,并查看游戏日志中的错误和警告。
汇报通过项、失败项,以及需要我手动检查的内容。

完整游玩发现了朝向错误、缺失特效,以及移动或时序变化后检查点被重置的问题。

项目提示词
导出游戏的 Windows 版本。为 the_red_scarf 设置 Windows Desktop 导出预设(嵌入 PCK、游戏图标、产品名“The Red Scarf”)。检查 Godot 4.7.2 的导出模板是否已安装;如果没有,告诉我安装方法,不要猜测。
排除测试场景、测试脚本和 Assets/Models/_test/。编写设置构建编号并执行导出的脚本,运行一次导出的 exe,并报告构建文件大小及所有错误。

第一次 Windows 导出为 1.15 GB,大部分来自纹理。删除未使用的资源和旧模型,并为法线贴图采用体积更小的压缩后,大小降到 755.5 MB。

最终版游戏的完整游玩实录

08 / 概览

我会带到下一个项目中的经验

我会重复使用以下流程:

  • 描述预期结果。
  • 制作一个小原型。
  • 在实际运行环境中检查。
  • 把每个反复出现的问题变成规则或报告。
  • 完成这些后再扩大规模。

我还会沿用同一套方法:小镇布局只维护一个数据源,资源批次设置检查点,围巾跃迁制定几何规则,并进行完整的 Boss 战测试。

如果要制作类似的演示,就从一个角色、一条路线和一个敌人开始。批量制作前先测试一个有代表性的资源,再把反复出现的问题变成可重复运行的检查。