← 返回首页
《星之卡比 探索发现》:程序化地形生成让玩法与美术兼得
核心观点
把地形「生成」交给程序,关卡设计师能改到最后一刻,美术也不必反复返工——玩法与外观不再是二选一。
原标题Procedural Terrain Generation in Kirby and the Forgotten Land
作者简介 加藤歩 · HAL Laboratory 开发本部开发环境室工程师,《星之卡比 探索发现》程序化地形生成程序员,负责地图制作流程设计与地形生成系统的设计、实现;此前参与《星之卡比 星之同盟》的技术程序。
其他参考 CEDEC 2022 官方页(原) · 中译(盒子游戏) · 中译(GameLook)
从「设计图 → 建模」到「自动生成」
《星之卡比 探索发现》是系列首款 3D 动作游戏,250 张地图中约 230 张由程序化地形生成系统产出。HAL Laboratory 工程师加藤歩介绍了这套让关卡设计师与美术「不再互相迁就」的系统。
旧流程:关卡设计图 → 美术建模
- 关卡设计师用方块地形画出设计图,美术据此制作 3D 模型。
- 痛点:关卡设计师难以精细调整与变更,美术的作业成本巨大——加藤歩称之为「对双方都绑手绑脚的状态」。
新流程:方块 → 一键输出 → 成品地形
- 关卡设计师在 Unity 地图编辑器里摆方块,按下输出按钮,系统自动生成正式地形模型。
- 关卡设计师可以把玩法调整留到开发末期;美术不必每次改关卡就重做模型。
- 美术的愿景成为生成主题:「毛茸茸的地形边缘」(内部称「毛边 / モコ」)、「可替换外观的部件」、「仿佛自然形成的墙壁」。
- 美术用 Maya 的 Curve Warp 准备边缘部件;只需更换素材与毛边,就能从草原变出沙漠、商场等不同风格。
用部件补足「程序生成的丑」
初版生成结果达不到美术要求的品质,于是陆续追加功能,让生成的地形更自然、更可玩。
道路:用顶点色彩代替 mesh
- 不用 mesh 或投影:在地图编辑器里把想变道路的区域标上顶点色彩,生成时系统自动识别为道路。
- 换材质共用同一套 UV,角落也不会被拉伸;自动设置碰撞属性,「走在沙上扬起沙尘」的效果轻松实现。
山丘与扭曲:打破方块感
- 山丘部件不做成方块,直接放置形成自然的隆起。
- 扭曲功能:故意给直线地形边缘的顶点坐标加噪点、错开,让地形呈现自然歪斜。
崩坏挖洞部件:负向地形
- 与山丘完全相反:放置后把地形挖出坑洞,契合文明荒废的世界观,也常用于门——移动部件即可改门的位置,无需改动地形方块。
- 配合 Maya 布尔运算:用逻辑差挖洞,用逻辑积做出破坏前的地形,复制切割后成为卡比破坏时飞出的碎片。
细节收尾
- 倒角处理硬边角;在拐角与毛边附近自动添加顶点色彩,提升生成品质。
成果、数字与代价
规模数字
- 2 位美术准备约 40 种主题数据(草原、大楼、水泥、沙漠……);5~10 位关卡设计师共制作 250 张地图,其中约 230 张由自动生成系统产出。
- 关卡形状可保留、自由换外观:早期做成洞窟的关卡,换主题 + 重新配置装饰部件,就变成了游乐园关卡。
工程取舍
- UV 中断问题:本作相机「反固定」,可以把中断处藏到镜头拍不到的地方。
- 新系统伴随试错成本:输出耗时、偶有失败;持续更新主题数据也可能让已做好的地图过时。
✦ 一句话总结:把地形「生成」交给程序,关卡设计师能改到最后一刻,美术也不必返工——玩法与外观不再是二选一。