洪志雄专访:如何使用Cocos2d-x完美呈现捕鱼3

移动开发 Android 游戏开发
《捕鱼达人3》采用了Cocos2d-x 3.x版本中的3D功能来进行开发,实现了完全的3D化。作为一款支撑了无数2D游戏产品的引擎,Cocos2d-x本次也将带来3D方面的功能扩展,帮助广大Cocos2d-x开发者.

 本期我们采访了《捕鱼达人3》主程洪志雄,请他谈一谈这款游戏技术上的创新以及他对手游开发方面的感悟

[[118050]]

作者自述
毕业这几年,我前期一直在从事服务器相关的工作, 先是跟师兄创业搞p2p视频,中间涉及p2p网络,搜索,网站搭建等相关技术。后来跑到腾讯去做过一阵子分布式, 还用倒腾过一年的虚拟机。2012年的时候,趁着部门转型的机遇跳到手机游戏开发部门,从事客户端开发。所以,对于游戏开发,也算是半路出家。幸好,自己非常感兴趣,跟对着Linux的黑底白字写代码相比, 看着小人在自己的控制下蹦蹦跳跳,成就感更加强。再后来就来触控这边负责捕鱼达人3的研发工作,也是我现在整天在忙碌的事情。

1.捕鱼达人3与前两部相比,技术上有哪些突破和创新?
捕鱼达人3作为前两代成功作品的续作,我们需要从玩法到技术,全面超越前代。所以在技术上,我们主要做了下面一些突破和创新:

1)鱼的3D渲染。 跟2D渲染相比,3D渲染可以让鱼看起来更加立体和真实。 3D骨骼动画可以让动作更加丰富和平滑。另外我们还为鱼增加了表情动作,让鱼儿更具个性化。

2) 纯3D路径。 前两代的2D路径在我们新的3D场景下,表现力要弱很多。为此我们设计了全新的3D路径编辑器,鱼的游动不仅仅在一个面上游动,而是一个立体空间,这样鱼的游动过程会更加平滑和真实。

3) 丰富的武器表现效果。 以前的武器效果,我们一般是结合帧动画和粒子效果实现,在捕鱼3中,我们的武器很多是通过 shader 实现的,让效果更加绚丽和富于变化。比如闪电武器,泡泡武器等。

4) 3D的后处理和灯照效果。大家可以看到我首屏模拟海洋的效果,就用到相关技术。还有鱼身上的波光效果。

2.《捕鱼达人3》使用了最新的Cocos2d-x中3D功能,它有哪些突出的亮点?请举几个游戏里的具体案例说明
1)继承Cocos2d-x的设计思路,只要具备Cocos2d-x的编程经验, 在使用和理解上完全无障碍,可以立马上手写代码。

2) 丰富的材质系统,可以自定义模型不同渲染效果。 比如:我们的鱼身上的渲染效果已经电鳗鱼的闪电效果

3) 强大的模型编辑器,可以自定义模型的材质

3. 引擎3D功能使用的时候感觉和2D部分区别在哪?
设计理念和开发流程和2D差不多

4. 游戏里面的动画效果,是UI实现的,还是Cocos引擎的3D效果?比如那个漩涡,是不是使用引擎的3D效果可以做很多不同的漂亮效果呢?
渲染时用3D的材质系统实现的, 由于材质系统的扩展能力很强,做出各种漂亮的效果完全没问题。

5. Cocos2d-x的3D技术稳定性如何?是否已经到了可以大规模市场化应用的阶段?
挺好的,我们Android版本的适配度高达92%以上。

6. 引擎粒子效果的效率一直备受争议,请问捕鱼达人3有没有专门做优化?
我们对同一种粒子做了批次处理。另外,还通过脚本, 严格控制了粒子的个数,不能超过某个上限值。

7. 在《捕鱼达人3》开发过程中,遇到哪些困难和挑战?你们是如何克服的?
游戏开发都会面临一个资源的管理问题,就是资源如何从美术制作,在到程序使用以及后续的维护。捕鱼3的资源类型比较多。2D层有图片,ui资源,动画资源,字体资源,粒子资源。 3D层又涉及3D模型,材质,纹理,shader等。另外,还有track,策划配置文件等。所以种类非常多。 还因为捕鱼3的适配性要求比较高,所以,我们有些资源按照分辨率有划分了几大类。 还附加一条,资源还分不同的语言版本。 上线之后,资源本身还需要跟随发布版本一起维护。所以中间的问题非常多。 在我们项目中会严格对资源进行规范, 包括命名,目录结构。资源如何从美术维护的目录流动到程序使用的目录等。另外还维护了一套基于ant+python的脚本来去驱动资源的流转。 实现一键生成程序所需要的资源。 无须人工的干预, 非常便捷。

另外我们还有一键打Windows,iOS,Android各种程序包的脚本,方便做版本的daily build。

8. 《捕鱼达人3》的背后一定有一支强大的团队,包括多方面能力的配合,能否分享一下团队协作和管理的经验?
就我们研发而言, 其实最重要是前期做好开发规范,然后打造融洽的团队氛围,明确每个人的开发任务,大家随着项目的发展一起往前进步。

9. 最后,对其它有志进入手游行业或者在摸索中前行的手游开发者,您能否给一些建议?
虽然很多媒体都在高喊:手游已是一片红海。 但这个市场远没有饱和,移动设备的增量仍然很大。而且区别于端游市场的客户端大作,页游市场的各种网游。手游的游戏类型更加多样化,更加丰富。休闲的,棋牌的,各类网游,都有成功的案例。所以,这个市场更加灵活,更适合小团队创造奇迹,仍然有很多的机会。另外从技术上讲,由于存在Cocos2d-x这种几乎处于垄断地位的引擎, 手游也是一个更加开放的市场。 网上有一大堆的学习资料和游戏源码, 只要你有点计算机基础,入门还是很容易的。重要的是自己能够静下心来多看多写些代码,争取独立发布一款产品。我见过不少人自己做一点东西都没坚持下来,做一半就放弃掉。其实在多坚持下,离成功就近了很多。




 

责任编辑:chenqingxiang 来源: cocoachina
相关推荐

2011-12-12 10:40:08

Cocos2d-X游戏开发开发环境

2012-04-17 12:44:38

cocos2d-x

2012-04-17 12:38:46

cocos2d-x

2013-05-22 15:49:46

2013-04-16 10:02:47

cocos2d-x懒人Android开发

2012-04-17 10:06:08

cocos2d-x

2012-04-17 10:59:31

cocos2d-x

2012-04-17 12:47:27

cocos2d-x

2014-07-31 16:57:30

2012-02-19 20:10:23

Cocos2d-x fCocos2dWindows Pho

2013-12-03 10:58:50

Cocos2D-X砖块地图

2013-05-22 14:38:44

iOS开发Cocos2d-x坐标系统

2013-06-03 17:04:20

CocoStudioCocos2D-X添加CocoStudi

2012-04-17 12:58:44

Cocos2D-X

2013-11-13 16:31:32

Cocos2d-x

2012-05-09 10:09:57

Cocos2d-xAndroidiOS

2013-06-07 14:06:52

移动开发Android开发cocos2d-x

2012-04-17 09:30:45

cocos2d-x创建

2012-04-17 13:12:00

2014-08-13 10:07:02

游戏引擎
点赞
收藏

51CTO技术栈公众号