游戏开发简史
最开始的时候,游戏开发更像是造硬件而非开发软件,不需要美术、策划甚至程序这样的专业分工。20世纪70年代初期,游戏是一些特制的盒子或者卡带,电子工程师负责为每款游戏制作电路板。这样的游戏机只装一款游戏,最初出现在游戏厅,后来发展成为家用游戏机,可以在家里的电视机上玩,代表作有大名鼎鼎的益智过关游戏《乓》(3)。
随着科技的进步,低成本的微处理器出现,游戏厂商可以生产更复杂的游戏,可编程硬件平台可以运行各种不同的游戏,不再限于只装一款游戏了。这引发了后来街机的流行并最终催生了带卡槽的家用主机(4)。这标志着游戏机从硬件转为软件,开发人员也逐渐由电子工程师转变为软件工程师,也就是我们的程序员。那个时候,一个程序员捣鼓几个月,就可以独立开发完成一款游戏。
1965年,英特尔联合创始人戈登·摩尔(Gordon Moore)提出了摩尔定律:“集成电路上可容纳的晶体管数量每隔两年就会增加一倍。”(5)此后几十年,摩尔定律一直被奉为真理(图1.1)。
图1.1 PC微处理器上晶体管数量的变化(6)
图片来源:https://ourworldindata.org
摩尔定律推动着家用电脑和游戏机的不断向前发展。每隔几年,市面上就会出现性能远远超过上一代的新款处理器。用户也总是期待着新款处理器下可能的新功能,开发人员也紧随其后,推出各种支持尖端科技的产品来满足玩家的需求。对开发人员而言,每隔两年主机平台的性能就会翻一番——芯片运算能力更强,图形图像处理能力更强,内存容量越来越大——这一切都遵循摩尔定律。
无一例外,每一代硬件革新都带来更强劲的性能和更大的容量。三维表现、CD音质的游戏音乐音效以及高清晰度的游戏画面,使得游戏体验越来越逼真,同时也推动着游戏开发成本日益攀升。内存(主存储器)和外存(辅助存储器)的容量也越来越大。30年前,雅达利2600游戏机(7)的内存容量不足1000字节,模块空间容量不足4000字节。然而在今天,PlayStation 3的内存容量是雅达利2600的800万倍,存储容量是后者的12 500万倍!处理器的速度和性能也以惊人的速度得以显著的提升。
早期街机游戏的迭代开发
最早期的游戏开发模式是当时硬件性能和市场的产物。在街机游戏的黄金时代(20世纪70年代末至80年代初),对游戏厂商来说,《吃豆人》《爆破彗星》《太空侵略者》《防御者》都是最受欢迎、最有影响力的“金矿”,一台价值约3000美元的街机每周可以赚1000美元。这股新的淘金热引起了广泛的关注。一时间,热钱蜂拥而上。然而,轰轰烈烈的粗制滥造和赶工发行,使得一些街机游戏厂商相继宣告破产。量产约1000台街机,需要一笔相当可观的投资,如果装的游戏很差,这笔投资就很容易变成泡沫。
为了避免几百万美元化为泡沫,游戏厂商需要保证游戏的品质。当时,游戏的软件开发成本极低,所以,一个行之有效的办法是在游戏投入量产之前先确认品质,一旦不达标,就果断砍掉,寻找新的替代方案。那个时候,游戏开发是高度迭代的,项目经理敲定创意,为开发人员提供一个月的时间和资金,让他们先开发游戏。月底的时候,项目经理玩游戏,并根据试玩体验来决定是继续开发、进入测试还是中止项目。
雅达利等公司把新开发的实物模型游戏机放在游戏厅其他游戏机的旁边,现场测试游戏创意是否受欢迎。几天后,雅达利清点游戏机内的硬币,通过这种方式来决定是量产、调试还是干脆终止项目。某些游戏如《乓》的早期原型就很受欢迎,以至于硬币卡机,现场测试还没有结束,游戏机就不堪重负,直接爆仓了(Kent 2001)!
借助于这种迭代开发方式,雅达利等公司连续推出了一系列高品质的游戏。然而,硬件成本持续走低,市面上的劣质游戏越来越多,导致街机市场在20世纪80年代中期开始出现下滑的趋势。几乎每个人都可以低成本生产和制作家用游戏机。之前因为投入成本相当高,所以每款游戏都会在谨慎验证品质之后再量产上市发行,但在成本急剧下降之后,这种开发方式显然落伍了。就这样,一旦市面上开始充斥着大量低品质的游戏,出现劣币驱逐良币的现象,消费者自然就会选择把钱花到别的地方了。
早期的游戏开发方法
在视频游戏开发早期,单兵作战的工作方式并不需要什么所谓的“开发方法”。短短几个月的时间,就能迅速做出一款游戏。在视频游戏硬件变得越来越复杂之后,游戏开发成本也随之走高。孤胆英雄已经很难充分利用游戏主机日渐强大的性能。作为开发人员,他们需要更多的帮手。
就这样,游戏项目中的团队和专业分工越来越明确。例如,图形图像处理能力的提升可以使屏幕上的图像更精细,色彩更丰富,这样的技术能力无异于创造了一块画布,可以供真正的艺术家挥洒才华。软件和美术成为商业游戏开发的重中之重,成为占比最高的两大成本。
说明 如果是独立游戏开发人员,请继续往后读。许多大型团队采用的实践仍然适用于独立游戏开发。第23章将探讨敏捷场景下的独立游戏开发实践。
短短十几年的时间,开发一款游戏从3~4人月激增到30~40人月。
为了降低日益增加的风险,许多公司从其他行业引入了瀑布开发。瀑布开发来源于温斯顿·罗伊斯(Winston Royce)1970年发表的一篇论文(8)。在这篇著名的文章中,描述了瀑布方法把大型软件项目的开发分为若干个线性的阶段,前序工作与后序工作依次衔接,开发成本随着开发的进展逐渐走高。从拟定整个开发计划开始,然后是写代码,最后是集成和测试。每个步骤的目的都是在进入成本更高的后续阶段之前尽量降低潜在的风险。
许多游戏项目采用的都是瀑布方法。图1.2展示了游戏开发项目典型的瀑布开发阶段。
图1.2 瀑布式开发
顾名思义,瀑布方法描述了开发中的工作流动,设计完成后进入分析,以此类推。罗伊斯在瀑布开发中还提到了迭代,即重新回到项目的早期阶段。游戏开发项目也用迭代,测试阶段出现问题时不断返回前面的阶段进行重新设计。但是,在采用瀑布方法的项目中,主要的设计工作在项目早期进行,测试工作主要在后期完成。
具有讽刺意味的是,这篇有名的论文,本意却是想说明瀑布方法的缺陷是造成项目失败的“元凶”。事实上,虽然瀑布开发屡屡被提及,但罗伊斯本人却从来没有用过“瀑布”这个词。
极端模型的终结
早期的游戏行业,如果游戏上市后大卖,就可以为游戏厂商吸金上千万美元。相对于几个月的投入,如此丰厚的回报显然是相当诱人的。高额的利润引发了投资的热潮。为了一夜暴富,热钱一哄而上。不幸的是,只有很少一部分游戏能够获得如此高的回报。但是,只要成本足够低,还在可控的范围内,游戏厂商还是愿意在各式各样的新点子上赌一把,“梦想还是要有的,万一就大卖了呢?!”只要能够有一款热卖的游戏,就足以为无数款失败的游戏买单。这就是所谓“碰运气,一将功成万骨枯”的商业模式。
此后三十多年,游戏行业的销售额稳步攀升。(9)图1.3显示了视频游戏市场1996—2020年的销售增长状况,每年持续增长约10%。现在,很少有类似持续稳定增长的市场。
尽管硬件性能遵循摩尔定律,但开发游戏的工具和流程却是另一番景象。到了20世纪90年代,一款游戏,一个小团队几个月就可以开发完成。游戏开发的成本因此也不断攀升,基本符合摩尔定律。直到今天,开发一款游戏的时间成本(以人年为单位)仍然在增加,有些游戏的开发成本甚至高达2.5亿美元。
人年 几十年来游戏开发的成本很难进行全面的比较。我用“人年”“人月”来比较特定时间内的成本投入。10人年表示两年5人的投入或一年10人的投入。
游戏投入的增幅远远高于市场营收的增幅。虽然每年发行的游戏在数量上没有显著减少,但玩家买一款游戏的花销只增加了25%(通胀调整值)(10) 。这样的形式对“碰运气”这样的极端模式造成了冲击。如今,一款游戏如果失败了,消耗的成本是30多年前的好几百倍。但一款热卖的游戏,带来的利润能够对冲的亏空却严重缩水。如果游戏开发成本仍然保持现在的增长态势,我们可以预见,过不了多久,即使每款游戏都大卖,游戏开发商也都只能勉强保本。
图1.3 全球视频游戏市场
说明 Laramee(2005)指出,市面上只有20%的游戏能带来可观的收益。