加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2d-x使用多年的思考和总结

发布时间:2020-12-14 19:08:48 所属栏目:百科 来源:网络整理
导读:10年就开始使用cocos2d-x了,当时还是用的0.9.x,现在都已经3.x了,这期间经历过太多次版本迭代,每次迭代都是一次新的学习,同时也让我对引擎有了更深的了解和思考. 1.UI编辑器是个非常头疼的问题,虽然其间有过各种各样的编辑器,cocosbuilder,cocosstudio,levele

10年就开始使用cocos2d-x了,当时还是用的0.9.x,现在都已经3.x了,这期间经历过太多次版本迭代,每次迭代都是一次新的学习,同时也让我对引擎有了更深的了解和思考.

1.UI编辑器是个非常头疼的问题,虽然其间有过各种各样的编辑器,cocosbuilder,cocosstudio,leveleditor等等,但到目前为止还没有一款ui编辑器能达到得心应手的地步,如果你曾经使用过unity3d的ngui,那估计是再也不愿用2dx做ui过多的游戏了,ngui是真正实现了把ui的大部分工作交给策划和美术来做,我想这也是cocosstuido的发展方向和学习的目标

2.开源的利弊,2dx是免费且开源的,这对很多个人开发者或者小型工作室来说是绝好的福音,创业之初我们公司只有6个人,在对比了市面上的所有免费2d引擎,再加上当时已经很火的cocos2d-iphone引擎后,我选择了2dx作为公司游戏开发的首选引擎,没想到这一用就是4,5年.2dx开源是件很好的事,任何功能都能自定义,有bug也能自己改,有不爽的地方改下引擎底层就好了,是的,我们当初就是这么做的,10年那版的引擎bug多如牛毛,我花了几个月的时间来改引擎bug,然后又花了几个月的时间来开发游戏,最后推出了帝国塔防1.现在想来还有点后怕,初生牛犊不怕虎,也不怕改出更致命的bug出来.甜头是尝到了,但是苦果也接踵而至,2dx发展到后期迭代太频繁了,而且后期出现了改变命名规则(比如去掉CC的烙印),精简api接口,使用c++11新特性等都会让上层调用代码伤筋动骨的版本,我有近两年时间什么都没做,天天就为整个优化维护和升级引擎,加自己的库,做ui插件等等,虽然现在我对引擎非常熟悉,也学到了不少好东西,但这种经历我不想再来一次.因此,开源很方便,但请尽量少的去改动引擎底层的代码,否则以后引擎版本迭代起来会很痛苦

3.跨平台的问题,2dx是跨平台的,但并没unity那么傻瓜,其实从android跨到ios还是有很多事要做的,如果开发者对两边的平台环境本身不熟悉的话,很头疼,2dx发展到如今大部分还是只能算图形引擎,很多要和平台或底层打交道的事还是要自己写的,比如jni调用,比如object-c和c++的相互调用,所以使用2d-x并不是掌握好引擎本身就够了,对发布的平台还是要有一定的了解,否则很可能出现开发游戏用了3个月,结果适配平台就用了1个月的后果.

4.序列帧动画的处理,2dx的序列帧动画就没好用过,我从使用2dx开始就重写了序列帧动画系统,后来发现自己写那套也不是很好用,又外包了一个动画工具,全部交给美术来处理,排好后程序只需要拿来用就行了,不过需要重点提一下的是,角色太多,场景太多的游戏真不适合用序列帧动画,虽然关系到游戏的美术风格,但使用骨骼动画很明显是一个明智的选择,内存占用,渲染压力,包的大小都要容易控制的多,我们现在的游戏由于美术风格的原因,没有采用骨骼动画,现在正为怎么压缩图片的大小而头疼不已.

先写到这里,待续...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读