从6月份开始,来自世界各地的12支队伍就聚集在英国邓迪市,凭着各自的拿手好戏,以及"魔鬼式"集中工作,互相比拼,比赛结果最后在英国爱丁堡市揭晓,中国四个学生及一名苏格兰学生组成的"凤凰之种"小组凭借"小熊回家"(BearGoHome)游戏与另外两队进入前三名,更大的擂台将在伦敦的电影大奖上展开。
包峰铭、邓晰、李毅和王光耀是北京大学软件与微电子学院的四名学生,他们坐在北大康博斯中餐馆里,和其他学生一样笑哈哈的。在经历了两个多月的艰苦比赛之后,他们终于回家了,同时带回国的,还有凭“小熊回家”游戏获得的英国“挑战数码时代大奖赛”的“最佳创意奖”。10月底,他们还得再去一趟英国,因为“小熊回家”入围了英国电影学院大奖(BAFTA)中的“游戏行业最佳新人奖”。
与李安入围同一大奖
“英国电影学院大奖在英国很重要,就相当于美国电影学院大奖———奥斯卡。李安的《断背山》还没在奥斯卡获奖时就已经获得了英国电影学院大奖了。”组长包峰铭止不住骄傲地说。
英国电影学院大奖(BAFTA)是“英国奥斯卡”,除了影片之外,还设置了游戏方面的奖项,包括年度最佳动作游戏、最佳网络游戏等14个奖项。
中国小组将要角逐其中一项“游戏行业最佳新人奖(ONCETO WATCH)”,他们四人是第一次中国人在这个奖项中被提名。
这是中国学生第三次参加“挑战数码时代”。6月份,北京大学的“凤凰之种”队和其他来自复旦大学、重庆大学和香港大学的学生队在英国大使馆文化教育处,通过提供创意比赛的方式进行了中国区的决赛,“凤凰之种”最终代表中国赴苏格兰邓迪参加总决赛,他们和一名苏格兰学生一起将此前的创意在“游戏工作室”里变成产品雏形。
和他们一起参加英国电影学院大奖的是另外两支“挑战数码时代大奖赛”的获奖队伍,英国邓迪市的VoodooBoogy队和英国爱丁堡的Carebox队,他们分获“最具市场潜力奖”和“最佳技术应用奖”。从6月份开始,来自世界各地的12支队伍就聚集在英国邓迪市,凭着各自的拿手好戏,以及“魔鬼式”集中工作,互相比拼,比赛结果最后在英国爱丁堡市揭晓,中国四个学生及一名苏格兰学生组成的“凤凰之种”小组凭借“小熊回家”(BearGoHome)游戏与另外两队进入前三名,更大的擂台将在伦敦的电影大奖上展开。
“小熊回家”为什么能获最佳创意奖呢?在他们的演示下,胖乎乎、毛茸茸的小熊完全受这鼠标的控制,打它时翻倒在地,再拖一下就转回来,打它尾巴时它就往上跳,前方苹果掉下来,就可以把它的嘴巴拉得老长地吃掉苹果,前方有朵花,它可以在花上弹一下跳到树上去。
“玩之前没有一个人知道该怎么玩的,但了解后很快就知道了。我们的游戏概念很新,背景也很漂亮,最后演示的时候很多人非常喜欢,‘最佳创意奖’几乎是毫无悬念地就颁给了我们。”包峰铭说。组里惟一的女孩子邓晰,全赛区里惟一两个女孩子中的一个也还记得当时裁判给出的评价:“Amazing,Simplyamazing,definitely beautiful(了不起,太了不起了,绝对漂亮的画面)!”
最疯狂的编程团队
编写游戏就是所有编程中最难最复杂的一块,而在有限的时间内为游戏大赛拼死奋斗更是难上加难。刚到邓迪不久,四个中国学生还挺新鲜的,但很快他们就发现,这城市小得可怜,出门也没意思。比“小城市”更不让人出门的是“大任务”。在经过第一个礼拜的挣扎之后,队员们最终忍痛做出一个风险极大的选择:放弃引擎,自己写。
程序员李毅介绍,第一个礼拜,主办方说提供一个非常强大的游戏引擎,但结果发现这个引擎却没有任何文档,之后队员们又换了几个引擎,都和自己的游戏要求不符。
“不用引擎在专业人士眼里是件很疯狂的事情,自己写一旦写坏了就没有退路了,”包峰铭加了一句。
放弃了所有的现有引擎之后,队员们就开始了“疯狂”的“写程”生活。两个半月里,他们没日没夜地写。最后,队员们相当于写出了一个自己的引擎,是所有12支队中惟一不用引擎的。
最后出现的代码长达7万多行,光核心代码就有3万行。
游戏小熊的“中国功夫”
之所以要放弃引擎,和“小熊回家”的游戏特点有关,队员们认为也正是这个特点使他们得到了技术创意上的肯定。
“以前的动作游戏就靠直接控制人物的行走动作来进行,比如直接按一个按钮就会播一个动画,但我们这儿是完全实时的。比如拖小熊的嘴巴让它变形,那就只有嘴巴动,拖嘴巴的动作是靠程序完成的,它身体靠动画形式还在播,整个操作是分散性的。”除了变形控制技术之外,另一个难点是这个游戏的风格,它看似简单的Flash,但实质却是扎扎实实的3D游戏。“Flash虽然也能编游戏,但没法实现变形等技术”,程序员王光耀说。“小熊回家”是个针对女性和儿童的游戏,所以没有采用流行的写实三维立体画面,而是选择了传统动画,以求达到清新、朴素、亲切的风格。所以他们做出的最终游戏是个“假二维”,从叠加的中国风味的背景上倒是可以看出三维效果。动画制作也不易。“对象是纸片一样的东西,我们先把熊在纸上画好,然后在phototshop里画材质,在3DMAX里绑定骨骼和动画,一步步来。”包峰铭说,他和邓晰两人都是动画专业出来,负责这个游戏的动画设计。
“我们用得比较多的是纸片动画,相当于我们中国传统的剪纸动画。拿我们的最终boss(游戏中指坏蛋中的大佬)为例子。
最终boss的每个关节都是断开的,每个关节的顶点都在该关节的最上方,动的时候就是以该关节的顶点为中心进行活动,给每个关节做动画,最终形成我们最终boss的每个动画。“邓晰说。
把动画背景叠加到程序里去也是一个难关。因为背景很好看,但做好后不能直接放进去,因为模型面积会很大,极大占用CPU.“这么多动画资源占到了500多兆,现在非常好的笔记本要读500兆也需要很长时间。
辛苦没白费。最后打分的时候裁判非常惊讶。队员们还说,后来很多人跑来问他们这些看似Flash,实际上是三维的游戏是怎么写出来的。
不过,没有呈现三维的写实视觉也有好处,至少他们不用为镜头问题担心。包峰铭介绍,“游戏中的镜头不同于电影中的镜头可以由导演来控制,游戏中的镜头大部分是设计出来的,所以难免会失误,而经常变化的3D动作就必须把镜头调整到最适合玩家的角度,如果镜头正好处在卡的角度,玩家技术再好也难免玩不好。这点我们的游戏因为只有一个镜头就可以避免”。
一个游戏的最后诞生
“游戏有很多种,有些游戏程序很复杂。”队员们开始介绍“小熊回家”的出生,“我们先有一个创意,然后和程序员沟通看能不能实现,接着我们做一个demo(样本)测试看能不能在简单的环境中实现,如果可以就增加细节,优化程序,让流程可操作性更强,完了之后再从美术的角度落实概念,知道全部确定后项目才开始正式做。”很关键的一点是,在编程序的同时,必须一边做一边测试,有任何问题需要及时修改。这就是“bug”(计算机里的程序或器件错误)捣的蛋。“这么多行代码,难免有bug出现,有些还隐藏得很深。”李毅介绍,最开始他们要做单元测试,每加进一个游戏特征就得做一次单元测试,等到全部加完了之后还得做集成测试,接下来,还得做压力测试,反复地玩游戏,看会不会崩溃。直到他们在爱丁堡比赛时开始展示的第一天,他们也还在修改程序。“现在想法大部分实现了,但还不是想像中的那么完美。”王光耀说,幸好,他们现在还有不少时间来进行改进,向终极大奖进军。