对比一下自己接触过的几款游戏引擎

写在前面

理性讨论,友好交流,非引战,纯个人看法,有异议欢迎反驳。

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的一些优点。官方吸收不了也没关系,社区大佬们正好倒腾插件补贴家用。
未来各种硬件性能肯定是会越来越好的,所以编程语言的性能卡点会越来越不是缺点。

2赞

cocos-2dx也是这样

最近学了一下godot,感觉非常有未来。
优点:
1、你以为下了个100M的安装包,其实整个引擎只有100多M!!双击就用,不需要安装 !,没有什么登录才能用引擎一说。
2、GDScript 码代码看效果非常快,实现游戏逻辑超快。如果对性能要求很高可以C#,也可以C++,而且能混用。 我觉得GDScript算优点,语法和python类似,简单好学,写着飞快。
3、内置代码编辑器,已经很好用了,基本不用额外ide(感觉用它编码,电脑风扇转的频率都少了,然后它只有100多M)
3、文档非常友好。功能基本齐全。
4、steam成熟的godot项目已经很多了。
5、开源MIT协议。
6、逐步开始有某些硬件显卡上的优化。

缺点:
1、思路和Cocos与unity有点区别,全是Node概念,包括prefab也是一个概念
(这个双刃剑,一旦适应,反而会简化,因为都是一个东西,操作反而统一了)
2、支持多平台打包,有平台内容以及C#适配,还在路上。小程序cocos应该没啥替代品。主机平台打包比较麻烦,不像UNITY那么方便,文档里有体现,能感觉到项目组已经关注到了。
3、好资料多为英文。(对于出教程赚钱的兄弟,何尝不是机会)
4、没UNITY那么齐全,但是迭代的很快,而且每次迭代的功能都在刀刃上(参考每个版本更新内容)

建议中小型主机独立游戏,可以一战!效率拉满。
总体评价:未来可期

有个致命缺点国内几乎没有商业公司在使用,跨平台问题很多,最关键找不到工作啊老哥

自己玩玩还新,真的公司用还差得远。 公司在意的是这玩意到底有多稳,出了问题怎么解决。 商业引擎你遇到搞不定的问题,充点钱支持马上来。这种开源引擎出了问题只能自己硬顶,这一条就很难接收 :joy:

公司考虑的是,市场上会这个的,人多不多,好不好招人,不然你跑路了,还找不到人来接手

最终结果就是引擎市场份额越少,越难找到人,就会有越来越多公司就会淘汰使用这种技术的项目

所以只有大公司是带头羊,大公司能承受损失,小公司不敢赌只能跟随主流