如何打造游戏研发“流水线”?谷得技术总监陈镇洪是这么说的
2018中国杭州云创大会将以“开放·生态·赋能”为主题,汇聚行业领袖、技术大咖及产业链从业者,探讨数字化浪潮下云计算、大数据的发展方向和应用趋势,分享教育、游戏、制造、金融等行业精英的前沿实践,重点解析工业智能互联网和数字化产业园区的升级之路。
此次大会还将基于开放技术和创新模式与大家一起探索打造联合生态圈,推动产业智能化升级,引领互联网+企业数字化转型;以知识共享促进云计算、大数据普惠化的道路,形成数字经济共同体,成为未来中国经济增长的新引擎。
为了帮助大家进一步了解这场全球前言技术共振盛会的内容,网易云采访了参会大咖,以飨读者。
以下为本次访谈正文:
“游戏研发会更加有章法,会演化成组件化和流程化的开发。”谈及未来,陈镇洪这么描述到。陈镇洪是广州谷得网络科技有限公司技术总监,现负责公司全线手游项目的研发。他接着指出,未来游戏研发不会从零开始,而是借助其他游戏的基础组装,从而形成一个新的游戏。
这不是夸夸其谈。谷得即将做的一款玩法为SLG+ARPG僵尸题材的游戏,使用的技术,计划50%从之前两款游戏里整合过来。”之所以能这么做,是因为整个底层和制作模式都是成熟的。“陈镇洪强调。
陈镇洪说,一款ARPG的游戏,它可以拆解为:底层框架+核心玩法+功能系统
将近十年的手游研发经历,八款产品的研发经验,让他在十几分钟的访谈中,显得格外有见地。
技术攻关
陈镇洪的作品有《世界OL》《世界2》等,当被问到哪个最具代表性时,他认为是目前重点在研的代号为《神角技巧》的产品,这是一款开放世界+沙盒+大规模多人+二次元叙事的游戏。
由于该类型的产品所打的领域还是一片蓝海,这也意味着他们是先行者,会遇到不少困难。
事实也的确如此。陈镇洪遇到的第一个困难是地形编辑上工作量大、效率低的问题。类似《我的世界》,《神角技巧》里的地形是由一个个方块组成的,一副地图大小是8192x8192x256个方块,而且得匹配好几种生态环境。
工作量大,美术人员虽无抱怨,但看着他们天天加班加点,工作进度却依旧缓慢,陈镇洪的神情也逐渐凝重。作为技术总监,他在思考技术上能做点什么。于是他带着团队自研出一套强大的地编工具,能通过复杂的地形生成算法和笔刷工具,让美术人员随心所欲的编辑,提高工作效率。
解决完这个问题后,另一个问题接憧而来。
由于《神角技巧》游戏里的地形是可以破坏和建造的,所以地形不是静态的场景。因此也就无法烘焙,必须是动态数据生成,而这则带来地形的存储、加载、渲染、光照、寻路等的处理非常复杂。
经过持续技术攻关,他们自研了一套关于沙盒地形的技术解决方案。聊及此处,陈镇洪说的轻描淡写,一切好像很简单,手到擒来。
实际上,在沙盒地形的技术解决方案背后,他们尝试了多个思路,最终才发现最优解。他们在数据和渲染上分开,渲染网格采用多线程;存储和读取上,规划合理的数据结构,通过切分数据块、优先排序相同的连续数值等方式;光照部分,分了几种情况处理,地形方块采用的是自己计算的顶点光。
这样处理后,效果立现:CPU和GPU的耗时明显降低,FPS可以达到30以上,发热得到有效缓解,性能大幅度提升。
产品的研发过程是可以被拆解和量化的
陈镇洪除了日常研发之外,也做技术体系搭建和积累、制定项目的流程规范、把控项目质量,以及提供通用代码和工具帮助项目组提高工作效率等。
一般而言,不同的游戏类型在技术开发上有不同的难点,例如Moba的难点是多人同步技术;ARPG游戏的难点是在战斗同步和动作模块;二次元游戏的难点是在视觉渲染和性能优化。对于这些点,陈镇洪的做法是游戏立项时,他的中心小组会进行技术难点评估,协助项目组一同攻关,然后再由中心小组进行归纳积累。
实际开发中,项目组的技术可能会陷入闭门造车的情况,不知道自己做的对不对。”如果等到上线才来验证就迟了。“在项目技术质量的衡量和提高上,陈镇洪会在项目开发的不同阶段,进行大约三次的技术评审,检查项目的方方面面,例如机型适配、性能指标、流量和安全等。
陈镇洪认为,一个产品的研发过程是可以被拆解和量化的,而这可以减少很多重复性的工作量。他举例说到,一款ARPG的产品技术,它可以拆解为:底层框架+核心玩法(战斗)+功能系统。
“当底层框架+核心玩法(战斗)两块有了足够的积累和沉淀后。假如再有一款ARPG产品,那么这两块就不用重复开发了。”他提及效果:“整个工期可以缩短一半,并且核心代码质量也能得到保障。”
当然,这只是从大的模块层面。陈镇洪说,实际上远不止这些,还有很多通用的工作。“我把这些定义为流程规范和通用工具。”他说,比如自动化游戏打包流程、特效制作和检测工具等。
让游戏开发尽量自动化
大部分领域,一般的趋势都是从纯手工制作,到流程化,再到自动化制作。
陈镇洪长期接触一线项目,所以对策划、美术程序的制作模式有深入了解,因此他也在思考工作模式上有没有提升的空间。
游戏开发领域有一个流程上的痛点:PC上开发,然后打包到手机上验证,这里面的工作频繁又麻烦,中间需要经历数个环节——在工程上点击Build等,完成后在Xcode工程打开,手动一个个设置参数和证书,Build,继续等待……
”整个过程需要有人盯着,而且手动操作还容易出错。“因此陈镇洪的团队实现了一个叫云构建的功能,任何人通过点击一个按钮,会自动化完成所有操作,操作结束后会有通知到手机上,点击安装即可马上看到版本。
除此之外,陈镇洪也做了不少的通用工具,例如动作编辑器、AI编辑器、地图编辑器等,这能完成各种动作游戏类型的核心开发,策划人员可以自主的开发想要的游戏。
面对面和陈镇洪交流的机会
谷得是一家老牌游戏公司,在研发经验领域有不少积累。对于他的其它更具象的经验,陈镇洪说,大家可以在2018中国杭州云创大会现场听他的分享。
在7月31日云创大会分论坛上,他会结合一款游戏做为案例,详细说明谷得是怎么研发产品的。比如说,如何解决大型游戏研发中遇到的技术问题;当开发的工作量很大,如何协作、如何提高工作效率,以及如何减少重复造车轮等,他会针对这些分享各种技巧和他的创新思路。
“现在手游的竞争越来越激烈,如何像流水线一样快速的研发是非常重要的话题,只有这样才能提高公司和自己的竞争力。”陈镇洪建议,对沙盒游戏和研发流程感兴趣的人尤其值得过来听。