问题:

貌似cocos名气大一些?因为神经猫的大火才知道egret,玩了一下他们的demo,貌似性能一般,不过对flash开发者特别亲切。有人对比过这两个引擎吗?分析下

百牛信息技术bainiu.ltd整理发布于博客园

回答:

题主的问题是稳定和好用。

从稳定上来说,这两个目前都相对上稳定,绝对上不稳定。
而好用大多数情况下是个人喜好吧?有些人以为 PHP 好用,而有些人以为 C++ 好用。

我做了2年 cocos2d-x 开发,主要基于 lua 和 cpp,没有研究过 js。触控目前对 lua 绑定的支持并不大,两年前是这样(Cocos2dx+lua合适还是Cocos2dx+js合适? - JavaScript),现在好像依然是这样。

所以,触控应该是花了很多精力来做 cocos2d-x js 支持。

我没有研究过 cocos2d-x js ,所以没有权利评判它,但评价一下 cocos2d-x 应该还是可以的。

cocos2d-x 2.x 的代码质量一般,但 3.x 有了很大的改善,问题是工具链这部分,cocos studio 不但没有给引擎添彩,反而是拖了后腿。

cocos studio 的问题上面已经有同学提到了,虽然夸张了点,但毕竟是事实。我从0.3一直看到1.0,发现还真的没办法用在工作流中。遂彻底失望。

例如骨骼动画这东西,本来 cocos studio 中的 Armature 就是移植 dragonbones 2.2 来实现的(在cocos2d-x中使用CCArmature实现骨骼动画
cocos2d-x专用的DragonBones2.2),最后却完全改成了自己的东西,和 dragonbones 不兼容,而且提供的编辑器也很难用。

egret 我用了1个月,所以还是个菜鸟。

egret 提供的工具虽然也有这样或那样的问题,但看得出来很多地方是用心了的,跨平台一开始就选了 AIR,这也是能快速推出这么多工具的原因之一吧。

虽然我不用 egret 的工具链(仅仅使用引擎),但从团队中的其他人看来,他们愿意去用 egret wing 而不用 vs 的 ts 插件(有些还是c++程序员),这就说明了这工具做得还是蛮好用的。不过有些工具也是有问题的,例如 texture merger 的实现就不是很完善。

总之,对于有 ActionScript 基础的同学来说,选择 egret 的确是可以快速上手。而没有这方面基础的同学,如果觉得使用 cocos studio 没有什么困难,或者根本不使用 cocos studio ,那么用 cocos2d-x js 也挺好。

的确如 @陈升想 所说,撕逼无义,还是好好做好产品再说。

 

首先,我个人不太愿意介入Egret和Cocos的斗争中,王哲大神是我非常尊敬的前辈,但涉及到公司名誉,作为当事人,我不得不澄清几点:
1,前半段说的基本属实
2,我们公司没有解散,还扩张了
3,我们也没有用回cocos(毕竟cocostudio太难用了,抱歉了)
4,Egret和Cocos都是非常好的引擎,各有优点,选谁就看团队的技术基因和积累和项目特点

最后,现在撕逼无益,大家还是好好做产品吧

egret对于flash开发者比较亲切?我其他不说了,光一个movieClip就真不亲切了。egret喜欢闭门造车,都是自己重写一些世界已经有默认规范和用法的东西。关于这个的牢骚,我也在GameRes上吐槽过[深入思考]从使用Egret的不爽中提炼的2个产品设计要点
cocos2d在做UI等方面的确是有欠缺的,但是相比egret还是好很多,毕竟成熟太多了,egret在很多方面没法给人一种做引擎的感觉,前一阵子还透出了想转型做编辑器的味道,但是一看那个飞机游戏编辑器,我就觉得太多太多的不靠谱了。
虽然我不是一个CTO,甚至不是一个程序员,但是让我一定从这俩里面选一个,我一定选cocos2d。
我用过egret,用了一段时间不习惯又用回cocos2d-js了,最大的原因是cocos2d-x可以通过jsb实现native版本,而egret只能靠他家的runtime。虽然jsb的native版本有许多坑,但是小修小补就可以用的很流畅,还可以出windows版,mac版。配合webstorm也很快,更重要的是直接用js而不是ts,还可以用babel来个es6,比ts用着要爽。
所以我的建议是如果没有native的需求,只是做html5的游戏,以前没有用过cocos2d-x的话就直接上egret。
如果用过cocos2d-x,还是建议用cocos2d-x js。
我当时用的是egret1.5,编辑器是比较强,但是多而杂,并不是宣传的那么好用。可能是我用的姿势不对吧。

egret 和cocos2d-x-js哪个目前更稳定更好用? ?的更多相关文章

  1. Cocos2d 编译js为jsc bytecode文件

    使用: cocos jscompile -s XXX(目录名,会递归) -d (输出的目录)   但编译后的jsc比原来的js更大了     如果只是为了代码的保密性,也许只需要用yuicompres ...

  2. CSS VS JS动画,哪个更快[译]

    英文原文:https://davidwalsh.name/css-js-animation 原作者Julian Shapiro是Velocity.js的作者,Velocity.js是一个高效易用的js ...

  3. 让你的 Node.js 应用跑得更快的 10 个技巧(转)

    Node.js 受益于它的事件驱动和异步的特征,已经很快了.但是,在现代网络中只是快是不行的.如果你打算用 Node.js 开发你的下一个Web 应用的话,那么你就应该无所不用其极,让你的应用更快,异 ...

  4. 让你的 Node.js 应用跑得更快的 10 个技巧

    Node.js 受益于它的事件驱动和异步的特征,已经很快了.但是,在现代网络中只是快是不行的.如果你打算用 Node.js 开发你的下一个Web 应用的话,那么你就应该无所不用其极,让你的应用更快,异 ...

  5. WOW.js – 让页面滚动更有趣

    演示1 演示2-仿oppo首页 下载 简介 有的页面在向下滚动的时候,有些元素会产生细小的动画效果.虽然动画比较小,但却能吸引你的注意.比如刚刚发布的 iPhone 6 的页面(查看).如果你希望你的 ...

  6. WOW.js – 让页面滚动更有趣

    官网:http://mynameismatthieu.com/WOW/ 建议去官网一看 下载地址:https://github.com/matthieua/WOW 浏览器兼容 IE10+  Chrom ...

  7. 用AOP来让你的JS代码变得更有可维护性吧

    此文已由作者吴佳祥授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 好吧我承认这是篇任务. 最近看到个消息,ES2017已经定稿了,心想,我去,还完全没了解ES2016呢,ES ...

  8. 如何让你的JS代码写的更漂亮

    感觉这篇文章总结的js的规范写法不错,拿来收藏.转自:https://mp.weixin.qq.com/s/AtR94IL9BW9EXOTnKOilmA 1. 按强类型风格写代码 JS是弱类型的,但是 ...

  9. Console命令详解,让调试js代码变得更简单

    Firebug是网页开发的利器,能够极大地提升工作效率. 但是,它不太容易上手.我曾经翻译过一篇<Firebug入门指南>,介绍了一些基本用法.今天,继续介绍它的高级用法. ======= ...

随机推荐

  1. 利用jquery实现向左滚动效果及offset的使用

    昨天和今天做了一个轮播图,它的tab标签不是1,2,3这样的数据表示,而是使用圆圈表示,效果如下:

  2. InteliJ 安装PlantUML插件

    打开InteliJ点击Setting 在[Plugins]搜索PlantUML插件,点击绿色的Install安装 然后重启 完成

  3. SpringCloud-Eureka注册中心

    什么是微服务,分布式? 分布式:不同的模块部署在不同的服务器上,可以更好的解决网站高并发. 微服务:架构设计概念,各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合)其它特性(单一职责,边界,异 ...

  4. Linux配置防火墙添加端口(Ubuntu/Debian无法使用此方法)

    注意:Ubuntu/Debian无法使用此方法 1.打开iptables vi /etc/sysconfig/iptables 2.添加防火墙规则 规则参考:http://www.cnblogs.co ...

  5. 一张图搞清楚PMBOK所有过程的使用

      很多参加PMP培训的学员大概都会有一个感受,上课时似乎每个知识点都听懂了,大的知识框架也弄明白了,但是所有这些串起来在实践中怎么用呀!说的再直接一点,在考试的时候这些过程和活动是以怎样的逻辑来应用 ...

  6. CF 558B(Amr and The Large Array-计数)

    B. Amr and The Large Array time limit per test 1 second memory limit per test 256 megabytes input st ...

  7. react 中的无状态函数式组件

    无状态函数式组件,顾名思义,无状态,也就是你无法使用State,也无法使用组件的生命周期方法,这就决定了函数组件都是展示性组件,接收Props,渲染DOM,而不关注其他逻辑. 其实无状态函数式组件也是 ...

  8. weex 小结

    1. import  文件时,必须引入全称,不能省略 .vue import mEcharts from '../components/Echarts.vue' 2.weex 的 cli 中没有 配置 ...

  9. c程序设计语言第一章3

    字符数组是C语言中最常用的数组类型.下面我们通过编写一个程序,来说明字符数组以反操作字符数组的函数的用法.该程序读入一组文本行,并把最长的文水行打印出来.该算法的基本框架非常简单: while (还有 ...

  10. 【转载】一些VS2013的使用技巧

    1. Peek View 可以在不新建TAB的情况下快速查看.编辑一个函数的代码. 用法:在光标移至某个函数下,按下alt+F12. 然后在Peek窗口里可以继续按alt+F12.然后按ctrl+al ...