游戏设计的敏捷方法学8页
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【转载】游戏设计的敏捷方法学
游戏设计的敏捷方法学作者:封烨来源:游戏创造02-23-2019
目前,业界弥漫着一股对次世代游戏开发的恐惧空气,GDC上谈,Game Developer杂志也谈。随着硬件能力的不断提升,开发更高自由度、更逼真的
游戏成为业界追求的最新目标,为了实现这一目标,随之而来的一切也都在膨胀:团队人数、美术资源需求、人时投资,当然啦,对投资者的资金需求也随之膨胀了起来。玩家的胃口越来越大。他们希望有更先进的技术以支持更好的游戏机制、更细腻的建模、更高分辨率的纹理、更复杂的人工智能、更多的测试以及更好的质量保证,没完没了。
而这种恐惧不仅蔓延了业界,就连媒体和玩家也感觉到了。游戏网站FiringSquad曾撰文:"游戏发行商和开发商,他们无一例外都在抱怨疯涨的
开发费用,其中主要原因是美术团队的人数在呈几何级数增长。"【注释01】
据笔者分析,业界所面临的大量问题,都源于其使用的开发方法学。目前人数超过100人的团队却仍在使用当年十个人搞定一切的方法学,而这些老的开发方法早就过时了。
传统的游戏开发所使用的方法学,需要在前期花费大量时间,定义功能,还经常需要在前期实现一些重要的元素,如游戏机制和关卡,一直延续到最后的疯狂赶工。传统的方法学(通常称为瀑布模型)其实与一条生产装配线没有什么区别。在生产线的前端开始把产品的各个部分拼凑在一起,而生产线的后端就在等待加工打磨,就是这等待的过程产生了问题。游戏策划和发行商永远都无法获知游戏的真正感觉,比如他们早先制定的游戏机制是否正确,现行的实现是否完全遵循了早先的设计。类似种种,最终造成了产品质量的下降…
有另一种方法学正好可以解决传统游戏开发方法学带来的问题。在产品
研发流程和团队管理方式中,它被恰当地称为"敏捷方法学"。敏捷开发注重于开发可供演示的游戏版本,并能很快地将其加入到产品中,以及在最重要的游戏元素和特性上按优先级创建垂直分片(vertical slice)。敏捷也注重团队管理和处理其内部关系,以及团队完成项目目标的计划和周期。游戏开发团队所面临的挑战可谓五花八门,而且由于职责有别,美术、程序和策划团队还要协同工作。游戏项目的时间跨度也很长:短则一到两年,长则三年以上,甚至个别游戏需要五年乃至更长时间。
这篇文章讲述了如何运用敏捷方法学和其中的Scrum方法学以应对上述
的挑战,它可能特别适合于游戏开发人员,尤其是进行次世代开发的策划。
方法学
方法学在大多数游戏设计或游戏开发的书籍中鲜有提及。他们都假设大
部分开发人员都无一例外地使用同一种做法,这种做法常被称为瀑布模型。在
瀑布模型中,工作都按照先后顺序安排,例如从项目需求或设计阶段到生产和
实现。在项目的早期阶段中,几乎没有迭代,这样就很难提供评估的机会。不
仅如此,一旦项目运行起来,要想返工就必定面临着覆水难收的局面。
在瀑布模型的游戏开发中,首先由游戏策划或者策划部成员编写游戏设
计文档,其中会定义很多游戏机制和特性。接下来这份设计文档被分解为小块
部分,由制作人拿去丰富其中需求的功能和资产,之后对于功能和资产的需求
就被分派到所有项目成员的头上。
接着就开始瀑布模型的流程了,这些需求瀑布式地流向动画、程序、关
卡美术、人物美术、测试、特效等人的手上。一旦某人或者某团队完成了一项
特性,就将其交给下一个人或下个团队。例如一个人物,由开始时的设定文档,到制作人或项目主管的手上,从这里它被细分为多个部分:人物模型和纹理贴图、人物动画、人物被击或者攻击时播放的特效以及驱动人物行为的人工智能
技术,然后每个部门专注于各自分到的部分,完成实现直到可以进行组装。
然后,东西回到策划手里做调整,交给测试员进行测试,再让关卡策划
在关卡中重现,之后退回各个部门进行除错。在制作这个人物的同时,其他人
或其它团队也在实现他们负责的部分。同一天中,一个制作人员会同时针对几
个不同的机制工作。这种方法学的实质是一种沉淀作用,需要对大量的游戏机
制同时进行加工。
敏捷开发
上世纪90年代末,一批新型的软件开发方法学开始显露头角。它们来自
于各种团队的开发实践,从网页小程序到装备到美国国家航天局的应用系统都有。每种方法学都有自己的注意事项,当然也受到来自各方的褒扬和批评。虽
然它们各有千秋,但其中的大多数方法学都有几点共通的基础。
2019年,在犹他,几位新型方法学的实践先驱们组织了一次峰会,峰会
就中心意识形态达成普遍共识,并发表了共同宣言:
1、可以工作的软件胜过求全责备的文档。
2、客户合作胜过合同谈判。
3、人和交互胜过过程和工具。
4、随时应对变化胜过刻板遵循计划。
实现高于文档,随时和客户合作,解决问题的能力以及敏捷地应对变化。敏捷的核心内容很简短,但它喻含了伟大的思想,使得敏捷适用于任意复杂的产品开发系统。
Scrum
随着敏捷开发不断的成长,一些不同的方法学开始显山露水。其中一些
是从敏捷中演化而来,另一些则是从某些正在使用但从未有完整定义、或未有应用软件开发实践的系统中得来。其中一种称为Scrum的方法,这是一种产品研发的手段,源于日本汽车和消费类电子产品制造业。根据定义,Scrum是一
种橄榄球战术,让所有在场的球员都参与球的争夺。
作为一种方法学,同样的参与思想被贯穿于产品开发的原则之中,项目
团队被重新组织成若干个小团队,对于特定的项目组件进行紧密合作。Scrum
强调迭代开发,把项目分为若干可供提交的组件,对这些组件可以进行演示、测试和功能评估。
Scrum的一个重要核心是要求团队里的每个人都参与流程。Scrum把产品
细分为若干个较短周期,称为Sprint。每个Sprint开始时,整个项目团队就
制定目标并自愿划分为小团队。Scrum团队是跨工种的,即美术、策划和程序
在一起工作。虽然每个团队的目标是由项目经理、制作人和发行商制定的,但团队有自主权制定如何实现Sprint的既定目标。一旦进入了Sprint状态,团队就完全自主地进行日常计划并执行任务。
就像Scrum老手经常提到的,项目无时无刻都在延迟。有鉴于此,Scrum
的一项重要组成部分就是在Sprint过程中,独立的Scrum团队间需要进行每
日例会。会议长短控制在5至10分钟,目的是确认目标可行性,找出前进障碍,并让每天完成的部分通知所有团队成员知晓【注释02】。这一流程帮助
每一个团队成员树立主人翁意识,流程高度透明的设计也培养了团队成员的责任心,用以最终推动生产效率。
团队自主管理中,例行检讨提供了团队把握方向的能力,并让每个人可
以以最清晰的形式评价产品:它看上去如何,它表现得如何。在每个Sprint
完成之时,团队通过检讨来演示他们的成果,并让产品管理者或者"客户",如工作室经理和发行商,来评估他们的进度。然后客户根据评估来确定下一个Sprint周期中的优先级安排。