如何评价“cocos creator”这款游戏引擎?

如何评价“cocos creator”这款游戏引擎?

喜欢这个问题 | 分享 | 新建回答

回答

肥猿

Aug 17, 2021
3 赞

要说“cocos creator”就得说道cocos2d、cocos2d-x、cocos2d-js的关系。

cocos2d本来是国外团队开源的一个游戏框架,cocos2d只是苹果下Objective-C的游戏框架,但是该游戏框架API设计得挺好,挺流行的,还开源。

后来国内的团队在cocos2d的基础上,开发了cocos2d-x,本质上是通过C++用OpenGL ES重构了cocos2d游戏框架,从而让一款游戏既可以是原生的iOS游戏,也可以是原生的安卓游戏。

同一时期,国外还有别的团队在cocos2d的基础上开发了以JavaScript为开发语言的H5游戏框架,即cocos2d-html5;后来在谷歌的资助下,国内的cocos2d-x团队做了和cocos2d-html5的接口整合,也就是cocos2d-x原先只支持C++和Lua,后来cocos2d-x也支持JavaScript了,而且JS版本的cocos2d-x同时能生成h5版本的游戏。这就是cocos2d-js。(原理上是通过JSB将原先的C++的API接口在JavaScript层上进行绑定,从而使开发者只通过JavaScript即可使用cocos2d-x)

cocos2d-x在v3版本以后就开始支持部分3d功能的,不过cocos2d-x一直是以代码驱动的,不像unity3d有一个编辑器,以节点为驱动,拖拖拽拽。而cocos creator则是一个基于cocos2d-x、类似unity3d的一个编辑器。

所以你可以把cocos creator理解成对标unity3d的游戏引擎。



cocos creator和unity3d都是业界首屈一指的游戏引擎。但是不管是cocos creator还是unity3d,我觉得都不好,之所以是首屈一指的行业典范,那是用户没得选。不得不吐槽,这些游戏引擎都是有很大问题的,费心思大投入搞了这些,但是在文档说明上却草草了事,我不知道是态度问题,还是故意逼人去买书,其实真正深入详细的书还是有限,所以不管是哪一款游戏引擎,学习曲线都是陡峭的,cocos可能初看之下学习曲线比较平缓,但是依然是文档匮乏,我认为态度有问题,以cocos2d-x为例,官网上学习文档只提供了C++版本,没有提供Lua和Js版本,也就是API Reference中给了,API说明也是极其简单说明。即使是给了C++版本的cocos2d-x引擎的tutorial,也是极其不负责,随便举一个例子,关于“瓦片地图”的文档,草草了事,还没有网友的博客长,我不理解这是一种什么心理。没有详细的说明解释,即使是有着十几年编程经验的一流程序员那也是要不断到处找资料,所以,以前会有说想深入掌握一款游戏引擎,那非常非常难;确实如此,因为说明书都不齐全,你想完全掌握使用,那是笑话。(至于版本冲突等细节问题我根本就不打算展开说了,其实一切的根源还是态度与文档;文档的详细程度体现出一款软件的开发者运营者的态度。)

我不是太理解这是什么心理,是因为cocos2d-x是开源不赚钱的,所以要留一手为将来做准备吗?初看之下,平缓的学习曲线和快速上手,确实吸引了广大的开发者。cocos2d-x也确实是非常优秀的游戏引擎。只是我认为不管是cocos2d-x还是cocos creator都需要极其详细的文档与资料才行,不喜欢写文档是全世界广大程序员最大的弊病。(备注缺详细的文档资源并不是cocos一家的弊病,很多软件都这德性)



冯纪忠雄

Jul 23, 2021
1 赞

1、cocos2d-x在3.1以后就支持了3d
2、cocos creator是基于cocos2d-js框架的(API有所细微不同,无法直接移植)
3、cocos creator是支持3d的,可下载cocos creator 3d 这个版本
4、cocos creator是跨平台的游戏引擎(解决方案,而cocos2d-x那只是游戏框架,是代码驱动的;cocos creator是组件驱动的,以内容、场景为核心;等于是对标unity3d而开发的游戏引擎)

我也看好cocos creator未来的发展,举一个cocos creator 3d开发的3d游戏的案例,就是腾讯光子工作室用cocos creator 3d开发的《最强魔斗士》:

腾讯光子工作室用cocos creator 3d开发的《最强魔斗士》

同屏的精灵挺多的,性能依然能跟上,除了可见光子工作室的优化能力,也能看出cocos creator 3d的性能是不错的。cocos creator 3d也是在不断更新版本的,我看好cocos creator 3d的未来。



喷火的尾巴

Jul 23, 2021
3 赞

我很看好cocos creator这款游戏引擎,我认为它将来会更加成熟,成为足以在3d领域也匹敌unity3d(下文简称“u3d”)的游戏引擎,虽然目前cocos creator(下文简称“ccc”)支持3d,但3d可以继续深化的空间还有;但是明显可以看出ccc是对标u3d。

原本cocos2d-js(cocos2d-x的js版本)是用代码驱动的游戏框架,而u3d是以内容、组件为驱动的游戏引擎(或称为“解决方案”)。

而ccc则是在cocos2d-js的基础上推出的类似u3d的游戏开发的一整套解决方案,其实就是对标u3d的。(cocos creator虽然是基于cocos2d-js的,很多api的方式与cocos2d-js类似,但是并不完美兼容,你可以把ccc当作完全重新构建的一套游戏引擎,换言之,cocos2d-js的游戏无法直接移到ccc中)

另外关于cocos的3d,其实cocos2d-x在3.1以后就已经具有3d的功能了,而cocos creator则是对3d游戏也有支持的,也许cocos creator目前对于3d的解决方案还没有u3d成熟,但是我很看好cocos creator在未来的发展,cocos已经从触控独立出来独立融资发展,所以,cocos的游戏引擎和游戏框架会有团队去专门研发维护更新,cocos的社区也很活跃,加之对中文的支持性更好,上手更快,逻辑更清晰,因此,我看好cocos creator未来会成熟到不亚于unity3d;u3d已经在美国上市了,我相信cocos也迟早会在A股IPO的,拥有资金的支持,所以,对于cocos creator的未来我很看好。



另外对于游戏开发的初学者,用cocos creator上手是一件好事,即使未来要转u3d,有ccc的基础,再转也会顺畅很多;我比较推荐cocos creator。



关于ccc打包后的性能与速度,因为是基于cocos2d-js的,所以理论上应该是明显高于u3d的,但是有网友反映目前性能和bug较多,这个我就不清楚的,我目前还没用过,以上只是从我的经验来看得到的结论,可能会有点肤浅,也不太配回答这个问题,但是我相信我的经验与眼光,所以就厚着脸皮回答你这个问题了。