2013-12-20 25 views
7

Cocos2d-x 3.0 alpha已经发布了一段时间了。什么改进了cocos2dx-2?使用cocos2d-x 3.0比使用cocos2d-x 2.x有什么优势?

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

您是否注意到性能,开发模式,API和支持方面的真实改进?

+2

可能您应该阅读官方网站上的发行说明。他们提到了那里的一切。 –

回答

10

我最近一直在使用它,并且从我注意到的主要区别在于,现在所有内容都是命名空间,所以您不必处理来自目标c模式的前缀名称,因此cocos2d ::点而不是CCPoint(特别是对于枚举,(Texture2D :: PixelFormat :: RGBA8888,而不是kCCTexture2DPixelFormat_RGBA8888))。

另外一些事件的东西现在支持C++ 11 lambda。

A的变化更完整的列表可以在这里找到:http://www.cocos2d-x.org/wiki/Release_Notes_for_Cocos2d-x_v300

,但使用它自己的大部分,它只是使他觉得更象C++,而不是像Objective-C的。

2

Cocos2d-x 2.1.5和2.2之间发生的变化之一是删除XCode中的项目模板(我不知道VS中是否存在项目模板等)。

新的构建系统在Cocos2d-x安装(至少在Mac上)下创建项目,这就是项目文件引用它们的位置。这使得移动项目非常困难,而无需手动调整。这也使得配置管理更加痛苦,这取决于你如何设置你的系统(例如像svn这样的根/树或者像“git”那样的“放在任何地方”)。

此外,Cocos2d-x库是作为一个库构建的。在之前的版本中,它直接放置在项目中。一方面,如果你不改变根库代码,这是很有道理的。另一方面,如果你偶尔调整某个特定项目的东西,那么你已经改变了所有依赖它的项目。阴/阳。

我对Cocos2d-x仍然非常乐观。我还没有升级到3.0或2.2。当它成熟一点点时,无论变化如何,我都会切换。对于我所需要的,我很确定它仍然可以完成工作(良好)。

+0

刚刚尝试在Mac上开始使用v3的更新评论 - “cocos new”命令行可以非常顺利地在您指定的目录中生成项目。 –

+0

@AndyDent我最近将一个项目从3.0升级到3.2,现在我正在积极配合3.2。目前看来“确定”。还没有弄清楚所有的细微差别,但是我能够启动并运行:https://www.youtube.com/watch?v=HWiiExd16Cs。 – FuzzyBunnySlippers

+1

感谢您的反馈。我在XCode 4.6上度假(旧的MBP),所以我不得不留在v2.2中,因为v3没有建立,但基于你的反馈将会尝试3.2(我已经下载了3.3rc0)。 –

3

我认为它的C++ 11

  1. 汽车
  2. 拉姆达

而且它没有必要使用前缀CC的

4

我已经切换和我发现它相当稳定。到目前为止,其主要优点...

  • 真实按钮,而非菜单不再推荐
  • 实时spritesheets
  • SpriteBatchNodes,我确实看到了消耗的下降电话,我没有优化
  • 不太客观的C模式。
  • 更现代。命名空间而不是'CC'。 C++ 11。
  • 更多的平台支持我

主要缺点:

  • 事件监听模式。我无法弄清楚如何让触摸输入影响触发事件的节点以外的任何对象。
  • 我们使用了很多纯文本按钮进行调试,并且它们很难布局:)
  • 缺少文档和示例代码。例如,我找不到任何有关如何在任何地方使用Layout类的文档。

这是很多工作移植,但对我们来说,我们必须决定冒险,因为我们最终会维护一个过时的代码库。花了大约5个人日来移植我们的游戏。游戏现在稳定,我们没有遇到一个科科斯的错误。

+3

我错了EventListener模式,只是不明白lambda表达式。模式很棒。 – ohthepain