使用cocos2d-X3.0比使用cocos2d-X2.x有哪些优势?

使用cocos2d-X3.0比使用cocos2d-X2.x有哪些优势?,cocos2d-x,cocos2d-x-3.0,Cocos2d X,Cocos2d X 3.0,Cocos2d-X3.0Alpha发布已有一段时间了。与cocos2dx-2相比有哪些改进 功能列表非常重要,但在性能方面是否有新的限制/改进 您注意到性能、开发模式、API和支持方面的真正改进了吗?我最近一直在使用它,从我注意到的主要区别是现在所有的东西都是名称空间的,所以您不必处理来自objective c模式的前缀名称,所以cocos2d::Point而不是CCPoint(特别是对于枚举,(Texture2D::PixelFormat::RGBA888而不是kCCTexture2DPixe

Cocos2d-X3.0Alpha发布已有一段时间了。与cocos2dx-2相比有哪些改进

功能列表非常重要,但在性能方面是否有新的限制/改进


您注意到性能、开发模式、API和支持方面的真正改进了吗?

我最近一直在使用它,从我注意到的主要区别是现在所有的东西都是名称空间的,所以您不必处理来自objective c模式的前缀名称,所以cocos2d::Point而不是CCPoint(特别是对于枚举,(Texture2D::PixelFormat::RGBA888而不是kCCTexture2DPixelFormat_RGBA888))

另外,一些事件内容现在支持c++11 lambdas

可在此处找到更完整的更改列表:


<>但是,在使用它自己的大部分时间里,它只是感觉更像C++,而不是像Objul-C.</P> < P>。COCOS2DX2.1.5和2.2之间发生的变化之一是在XCODEL中删除项目模板(我不知道VS中是否存在项目模板)。 新的构建系统在Cocos2d-x安装(至少在Mac上)下创建项目,而这正是项目文件引用它们的地方。这使得在不手动调整的情况下移动项目非常困难。这也使得配置管理更加痛苦,具体取决于您如何设置系统(例如,像svn这样的根/树或像git这样的“放在任何地方”)

另外,Cocos2d-x库就是这样构建的,一个库。在前一个版本中,它直接放在项目中。一方面,如果你不修改根库代码,这是很有意义的。另一方面,如果你偶尔调整某个特定项目的东西,你已经修改了所有依赖它的项目。Yin/Yang

我对Cocos2d-x仍然非常乐观。我还没有升级到3.0或2.2。当它更成熟一点时,我会切换,不管有什么变化。对于我所需要的,我非常肯定它仍然会完成工作(很好)。

我认为它是C++11

  • 自动的
  • 兰姆达

  • 而且它没有不必要地使用前缀CC,我已经切换了,我发现它非常稳定

    • 真正的按钮,而不是菜单
    • 实时精灵表
    • SpriteBatchNodes不再被推荐,我确实看到了draw调用中我没有优化的地方
    • 不太客观的C模式
    • 更现代。名称空间取代了“CC”。C++11
    • 支持更多平台
    我的主要缺点是:

    • EventListener模式。我不知道如何获取触摸输入以影响触发事件的节点以外的任何对象
    • 我们使用了很多纯文本按钮进行调试,它们很难布置:)
    • 缺少文档和示例代码。例如,我找不到任何关于如何在任何地方使用Layout类的文档

    移植需要很多工作,但对我们来说,我们不得不决定冒险,因为我们最终会维护一个过时的代码库。我们花了大约5个人天的时间来移植我们的游戏。游戏现在很稳定,我们没有在cocos中遇到任何错误。

    也许你应该阅读官方网站上的发行说明。他们已经提到了所有内容。我对EventListener模式的看法是错误的,只是不理解lambda表达式。该模式非常好。这是一篇刚刚开始在Mac上使用v3的更新评论—“cocos new”命令行在您指定的目录中生成项目时运行得非常顺利。@AndyDent我最近将一个项目从3.0升级到了3.2,现在正在积极使用3.2。看起来“OK”到目前为止,我还没有弄清楚所有的细微差别,但我已经能够启动并运行了:。感谢您的反馈。我一直在度假时使用XCode 4.6(旧MBP),所以我不得不留在v2.2中,因为v3尚未构建,但根据您的反馈,我将尝试3.2(我已下载了3.3rc0)。