您想找什么?
Case studies

模块化设计方法如何打造出 Sable

Jul 12, 2022
未来科幻飞行器上的黑貂形象
此页面为机器翻译。如需查看原文以确保准确性并作为权威参考,

小型独立工作室 Shedworks 通过准确定位自己的能力,发挥了自己的优势。

棚屋:Unity 案例研究

新工作室如何利用其小型、快速的团队,令人信服地创建并填充一个开放世界?Shedworks 将自身的局限性转化为优势,采用模块化设计方法,高效率地建造了一个用心的探险项目,实现了独特的艺术愿景。

挑战
以低成本高效益的方式,通过一个小团队创建一个全面的、叙事驱动的开放世界游戏
平台
PC、Xbox One、Xbox Series X|S、PlayStation®5
项目工作人员
6 个全职承包商,4 个兼职承包商
所在地
英国伦敦
黑貂从大山滑下

充分利用小型独立游戏的挑战

在创建Sable 的过程中,Shedworks 面临着典型的小型独立公司的挑战:有限的人力和预算、混合的技能组合,以及快速交付强大产品的市场压力。

他们让这些制约因素指导自己的开发过程。他们没有创造广阔的、高度精细的景观,而是选择了小型的、多彩的沙漠生物群落。他们没有复杂的服装,而是制作了可互换的服装,作为玩家的双重奖励。他们充分利用了 Unity 的可扩展模块化设计和Unity 资产商店的社区资源。

黑貂爬梯子

结果

- 为角色、服装和气垫车的创作实施模块化叙事和工作流程

- 使用 Unity 资产商店中的 MapMagic 在数天内创建广阔的开放世界地形

- 荣获《PC Gamer》2021 年度最佳叙事奖、2021 年度游戏奖最佳独立游戏处女作提名,以及 2021 年度金摇杆奖最佳音频和最佳独立游戏提名

"与制约因素合作可以减轻你的决策负担。你可以更快、更频繁地进行迭代"。
GREG KYTHREOTIS / SHEDWORKSArtist/Designer
科幻悬浮自行车穿越峡谷

决定建造与众不同的建筑

技术开发人员丹尼尔-费恩伯格(Daniel Fineberg)和艺术家/设计师格雷格-凯斯罗蒂斯(Greg Kythreotis)是家庭朋友,他们的父母在建筑学校相识;凯斯罗蒂斯本人学的是建筑,而费恩伯格学的是比较文学。但毕业后,他们决定要制作视频游戏。他们在格雷格父母的花园棚子里工作,自学 Unity 的原型设计,同时提供网页设计服务和其他合同工作,以维持自己的经济来源。

很快,费恩伯格和凯斯罗蒂斯就有了后来大获成功的早期原型。当他们在 Localization 的游戏竞赛中分享这个项目时,热烈的反响推动了更大的动力。

随着游戏玩法和视觉效果的不断改进和完善,一些游戏片段在 Twitter 上疯传。Raw Fury 是斯德哥尔摩的一家游戏发行商,以强调体验和情感而非复杂的机制而著称。最后,Shedworks 与 Raw Fury 签订了合约,开始认真地为Sable 工作。

站在塔顶的黑貂形象

将 Sable 从工具间带到 Tribeca

Sable的主人公是一位第一次离家远行的年轻女性。她正在穿越沙漠寻找面具,这是她游牧部族的成年礼。她骑着悬浮自行车,遇到不同的人物,这些人物讲述了她的家族和星球的历史,同时还用谜题和新的目的地来挑战她。

"费恩伯格解释说:"从一开始,我们就不想打架。取而代之的是,《Sable 》是一次穿越美丽而稀疏景观的沉思之旅,其灵感来自于摩洛哥之行、彼得-吉罗(Peter Giraud)(《Mœbius》)的作品、吉卜力工作室和《 星球大战》宇宙。


为了丰富叙事,Shedworks 与多位作家合作。英国梅格-贾扬特编剧公会奖得主曾参与过《80 Days》和《Sunless Sea》等游戏的制作,为项目提供了早期支持,《Sweet Baby》的 Kim Belair 和 David Bedard 在开发后期也加入了该项目。他们的贡献为《Sable PC Gamer》赢得了 2021 年最佳叙事奖,这款游戏甚至还参加首届翠贝卡游戏节。

建在悬崖边堡垒上的两座雕像

为稀疏平淡的外观注入感觉

细节丰富、逼真的环境可以在技术上给人留下深刻印象,但 Shedworks 故意使用低聚模型设计了一种更原始、更手工的外观,以表达他们的故事。费恩伯格说:"我们注重用色彩来营造氛围"。

你找不到笔直的线条,角色动画有一种停格动画的质感,Unity 3D 工具生成了一种明显的平面美感。Sable的所有纹理和视觉特效元素都是在 iPad 上手绘的。为了快速填充他们的沙漠世界,他们使用基于噪声的着色器自动生成地形的某些方面,如岩石,结果证明这是节省时间的重要方法。他们有意让画面自由而不精确,始终创造出连贯、迷人的场景,而且实施起来相对较快。

模块化角色设计示例

使用 Unity 实现模块化开发

"Kythreotis 说:"作为一名建筑专业毕业生,采用模块化方法进行开发对我来说非常自然。传统上,这意味着编程技术,例如将对象组织为一个类中的实例。然后,通过附加定义特定行为的不同组件,一个对象就会变得独一无二。


Unity 采用这种方法的基本方式是使用包含任意数量GameObject 的多个场景文件。然后,对象就有了组件,如服装预制件,以及位置、方向和大小等其他特征。此外,还有严格的层次结构,因此修改一个属性会向下而不是向上扩展效果。"Kythreotis 继续说:"这种模块化方法意味着我们拥有可重复使用的游戏片段,代码更容易调试,游戏的可读性也更强。

模块化悬浮自行车

接近模块化

对于 Shedworks 来说,模块化还意味着利用他们的建筑意识,快速构建一系列可互换的面具、服装、NPC 和悬浮自行车。在游戏过程中,玩家可以更新自己的服装并定制其他游戏组件。Shedworks 利用这些相同的模块建立了一个奖励系统,将这些定制藏起来,作为无畏探险者的 Collectibles。许多奖励令人惊喜:找到 "Llhor "角色藏身的洞穴后,玩家将获得一位评论家所说的"游戏中最令人情感纠结、最有存在感的对话之一"。


Sable的编剧还提供了模块化的内容,创建了开头和结尾,然后用独立的叙事片段填充非线性的中间部分--Shedworks 将此称为 "柠檬形故事"。只要注意保持故事元素之间的相互关联,就可以根据制作要求轻松地混合、匹配、编辑甚至丢弃这些组成部分。

与世隔绝的沙漠定居点

使用资产存储工具加快创建速度

对于 Shedworks 这个规模很小的团队来说,Sable 是一个巨大的挑战,即使是在获得他们想要的独特效果所需的各种工具方面。"费恩伯格说:"我们可以完成所有寻路、行为树、逆运动学等工作,但这需要花费数年时间。"Unity资产商店无疑是一个关键资源"。


设计师 Kythreotis 的编程能力非常基础,他发现GameflowVisual Scripting 工具非常宝贵。Fineberg 编写了一个自定义触发器系统,Kythreotis 可以在 Unity 检查器中用 Gameflow 无缝配置触发器和其他可脚本对象。

貂蝉的沙漠陵墓之一

迭代独特的地形生成技术

Shedworks 选择了MapMagic 这种基于程序节点的方法来生成开放世界的地形。Kythreotis 说:"没有 MapMagic,我们就无法制作Sable,它大大节省了时间"。他们使用 MapMagic 提前而不是在运行时创建环境。在初始生成的基础上进行工作,意味着他们可以在固定的环境中玩不同的迭代,在地图上移动东西,轻松重塑世界。"在限制条件下工作可以减轻你的决策负担。你可以更快、更频繁地进行迭代"。


ProBuilder是另一个能够实现更频繁迭代的工具。事实上,据费恩伯格估计,他们用它构建了Sable公司近 80% 的环境。为了降低 Sable 的内存开销,他们在构建游戏之前从最终资产中剥离了 ProBuilder 脚本,保留了大部分原始网格。

黑貂游戏人物走向一座大塔

少花钱多办事

Shedworks 的成功证明,小型工作室只要准确定位自己的能力,并据此设计游戏,就能克服想象中的限制。在《貂蝉》中,Shedworks 通过发挥自己的优势,有意识地避免 AAA 级的外观,从而获得了 AAA 级的感觉。他们还知道何时通过有效使用 Unity 资产商店中的工具来节省时间和资源。作为受建筑实践影响而自学成才的 Unity 创作者,Fineberg 和 Kythreotis 接受了在限制条件下进行设计的培训。Sable向我们展示了作为游戏开发者,Shedworks 如何巧妙地将约束条件作为开启创造力的钥匙。

夜幕下的沙漠

构建一次,吸引数十亿用户

获得更广泛的受众,并对自己的知识产权为未来做好准备充满信心。只需创建一次内容,即可在 20 多个平台上发布玩家玩游戏的地方就能吸引他们。