写在前面
理性讨论,友好交流,非引战,纯个人看法,有异议欢迎反驳。
cocos creator
我是用cocos quick开始接触椰子头的,椰子头的产品是我用的最多的。总体来说目前没有以前那么强有力了,但是未来怎么样说不定。
优点:
- cocos有着对国内开发者来说最好的论坛。这是一个极大的有点,毕竟是国产,有先天的优势
- cocos creator牢牢占据了小程序市场。另外有一部分是laya。不过cocos creator应该更强力一点
- 开源,免费。可以尽情地魔改。
缺点:
- 有许多细节上的缺失或不完善。说得不好听一点,网上有言论说cocos的官方根本不懂开发者的痛点,许多问题全靠社区。并且社区有了很好的方案后,整合起来也超慢。
- 生态相对较差。cocos store上的产品质和量都差很多。
- 编辑器性能不太好。个人觉得这是因为用electron开发的关系。无论是编辑器的插件扩展,还是本身的性能强度,都和unity有不少差距。
unity
已有取死之道的引擎。
工作中使用了一年多吧,感觉各方面总得来说的确很强力。但是之前unity收费风波整出来之后,我就对它一生黑了。如果不是因为工作需要,不想用它了。
优点:
- 强大的生态。具有超多的资料、教程,unity store上有大量的资源。
- 很完善的功能。举个例子,unity的计算着色器已经出了很久了,我自己用过,挺好用的。cocos creator我看到已经有了计算着色器这个功能,但是看文档的教程,整不出来,网上也搜不到响应的使用方法。
- 编辑器扩展超级方便。
- ugui有个神奇的自动调节渲染次序的功能。简单来说就是如果一些ui互相之间没有交叠,那么渲染时会按照先渲染兄弟对象,再渲染子对象的方式去渲染。这对于游戏ui中背包之类的drawcall重灾区的优化有很大帮助。虽然这个功能用起来没有达到很轻松方便的程度,使用时我经常通过在某些父子对象之间垫上一个透明度设置成0的对象,来调节他们的渲染次序这种有些奇怪的方式。不过最终结果的确能够解决drawcall过高的一些问题。
缺点: - 已有取死之道。
- 不开源
- 多套ui系统混乱。
godot
自己用着玩过一段时间。总的来说非常非常不适应。晚上各种说godot怎么简单。我用起来却各种水土不服。但是它的确有很多独到之处。
优势:
- 针对开发者的痛点猛发力。很多新手开发者会遇到的困难,或者对于老手开发者不困难但是会比较消耗时间的功能点。godot都有很好的官方功能。可以说把简单好用整的极致,甚至有些魔症。比如说godot的那套瓦片地图编辑功能就很给力,让人眼前一亮。
- 纯节点的对象结构。这一点其实既是优点也是缺点。godot没有组件,只有node。加组件就是在node下加子node。这一点让我在用起来的时候相当不适应。不过从设计思路上来说,感觉这种更极端的方式更符合未来的发展,并且对刚开始学做游戏的开发者来说,学习的难度肯定是更低的。
- godot自身也是用godot渲染出来。这个只是噱头,实质的优势是它的ui系统很完善好用,并且既可以用在游戏上,也可以用在编辑器上,是统一的一套系统。
缺点: - gdscript是什么鬼!虽然可以用c#但是据说有很多类型不能准确判定的问题。
- 丑。
对于学习游戏引擎的一点看法
不要把自己吊死在一棵树上。游戏引擎这种东西是有它的寿命的。多学一点,多接触一点。了解各种引擎的有点缺点。
目前对于开发者的工作需求来说,我觉得最多的还是unity和cocos。
希望unity最好早点完蛋,让其他引擎发展起来,不过为了饭碗,当下该用还是得用。
希望cocos creator雄起。建议cocos creator吸收一下godot的一些优点。官方吸收不了也没关系,社区大佬们正好倒腾插件补贴家用。
未来各种硬件性能肯定是会越来越好的,所以编程语言的性能卡点会越来越不是缺点。