Giter VIP home page Giter VIP logo

Comments (5)

stubma avatar stubma commented on June 26, 2024

谈谈你对3.x的感想, 有什么必须要用3.x的理由没有. 2.x已经很久没有实质功能更新了, 他们应该已经放弃维护了, 我在考虑是否要接管2.x版本

from cocos2dx-better.

zcgit avatar zcgit commented on June 26, 2024

主要的感受有几点吧:
1.封装得更紧凑了,这无形中带来了不少学习成本,尤其是针对每个平台的部分,更是让初学者摸不着头脑
2.3.x里的label反正是彻底换了实现方式,用了freetype,至于效率,我觉得应该比2.x的要好点,2.x的思路是bitmap转CCImage再转texture,当文字较多时效率真的差很多。
3.其他的东西改了不少,但我没认真研究了,大体感觉差不多,无非是优化了思路、代码或效率,例如加上自己的数据结构等。
4.加了3d部分,没敢去碰。
4.我见过一个触控的人出来,说他们下一步的重点会是3d部分,这部分主要是北京这边负责,2d还是厦门那边,至于设计方向性的问题基本交给美国那边了。
5.我使用了脚本lua,发现3.x里要自己绑定是一件非常复杂的事情,这个对经验不足的人来说绝对会头疼,在2.x里绑定lua只要写个pkg,在注册下就好,所以很容易上手,3.x里就麻烦了,引擎设计者为了减去编写pkg的麻烦,将很多东西都整合到一套脚本里,所以如果想学习深入点,必须得认真跟进去,才能理解设计者的意图,而且3.x里的lua绑定这块对c++lambda表达式的支持也没认真处理,现在居然直接在源码里提示不支持(其实是有方式解决这个问题的)。

其实要说转3.x的必要性,我觉得不是必要不必要,而是要早还是要晚罢了,2.x确实维护得不多了,上一次2.x比较大的更新其实是对wp8的支持做了优化,之后就没什么实质的了。

 总之,2.x其实学起来很简单,但3.x会复杂,如果要接管2.x,还是得耗费不少精力,而且有很多值得完善的,之前您的wiengine其实还不错,如果可以取长补短,加以维护,2.x还是可以做得更好,但这就看精力是否充沛了。
 不过实话实说,不管2.x维护得好不好,以后优先被选择的还是3.x版本。

from cocos2dx-better.

stubma avatar stubma commented on June 26, 2024

谢谢, 挺有帮助. 我还没实际用过3.x, 只不过从他们的更新记录上判断, 觉得没有必要升级, 不过由于2.x不再维护, 大部分人应该还是跟随了他们的脚步. 我说的"接管"可能重了些, 只是打算弄一个经典版本, 或者叫古典版本, 或者叫私人定制版本, 把积累的东西整合起来.

cocos2d的基础架构(即CCNode, CCAction这一套)是稳定的, 他们不太可能去改. 3.x对基础架构的改变主要是渲染流程做优化, 开始排序批量处理了. 对于他们宣称的性能提高了多少多少我不是很信, 而且对于2d手游来说, 渲染性能成为瓶颈的时候不多, 他们改变渲染流程我觉得主要是为了3d, 但是3d的工具链可不是一日之功, 要选3d引擎, 多少年内我觉得也轮不到cocos.

所以cocos2d在很多人眼里应该就是定位于2d引擎的, 2.x版本从基础架构上来说是很容易理解和使用的, 但是他们对细节极其不关注, 带来了bug, 设计缺陷, 功能不足, 使用不便这样的坑爹体验, 每个人可能都踩了不少坑, 也动手填了不少坑. 一个填了不少坑的2.x其实是相当够用的, 3.x那些花哨的玩意不见得有多大意义. 不过, 他们做的cocostudio还是有意义, 至少写界面容易了一些, 当然, 用起来还是一堆坑, 我也给cocostudio填了不少.

就像上面说的, 我其实只是为了弄个私人定制版本而已, 也不打算花很多时间, 主要就是为了把better的代码真正融合进去, 而不是继续作为外挂存在了, 而且有些外挂也弄不了, 只能改原始代码. 另外, 貌似quick-cocos2dx只面对3.x吧, 我也打算参考一下弄到2.x里面去. 所以基本的设想是做一个cocos2dx, better, quick三合一的2.x版本, 而且只支持ios和android, 其它平台没用的都删, 更清爽, 因为我日常都是用mac.

这样, 又有稳定的2.x, 又填了坑, 又有lua支持, 又有勉强能用的界面编辑器, 才算是好用一点吧. 我创建了一个空库叫cocos2dx-classical, 也是这么个意思, 希望整一个古典的, 经典的cocos2dx版本.

只是最近国内github同步巨慢, 开始不了~.

from cocos2dx-better.

zcgit avatar zcgit commented on June 26, 2024
我也是一直用mac,所以自己平时添加的东西完全没考虑win平台的,我们去年做了个wp8平台,花费了近4个多月甚至是半年的时间才将之前的游戏搬到wp8上面,这个过程其实相当麻烦,坑也是不少,结果搞完之后他们又更新了2.2.5版本,针对wp8做了不少工作,这时才发现我们做的太早了,很多问题之前都是我们自己搞定的。
你说的经典版本,我觉得很不错,如果要做,我觉得这个时候可以稍微放开点,之前一直为了不动源代码,导致蹩手蹩脚,很影响效率。
如果我做这个经典版本,我至少会做几点:
1.将引擎改成支持c++11,这个很好改,改完之后编码效率会高点。
2.保留wp8平台,其他的都去掉,我觉得wp8平台还是又必要留住,因为现在还是有不少公司做了wp8平台的,月流水几百万的游戏也有了。
3.将lua的支持做的更好,异步更新的优势还是非常大的。
4.还是有很多bug需要修改的,甚至设计都可完善,举个最简单的例子,CCNode有个方法叫        setUserObject(CCObject* obj),看代码:
   CCNode* node = CCNode:create();
   node->setUserObject(node); 
   此时的node就无法自动释放了,因为它自身retain了自身,我觉得这个地方的设计很怪。
 5.提供更好用的UI,现在的UI真的不好用。

from cocos2dx-better.

stubma avatar stubma commented on June 26, 2024
  1. 改成c++11这个想法倒是可以
  2. 接触wp8很少, 看时间吧
  3. 学习借鉴quick
  4. 哦, 我一般用setUserData, 他不retain, setUserObject用的少, 让setUserObject不retain就行了吧
  5. 写ui费劲, better里面改了不少, 其它有些无法用外挂方式的改动我就没放better了. 给wiengine移植过CEGUI, 基本能跑, 但是有个别bug, 而且那玩意感觉还是太重了, 虽然功能是很强.

from cocos2dx-better.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.