Cocos2d 2.x, 1.x and ARC



两个月前开始开发我的第一个游戏时,我选择了Cocos2d v1.01rc而不是2.x。

现在我正在学习更多,我意识到 ARC 完全支持并集成在 Cocos2d 2.x 中,相反,在 v1.01rc 中,我必须决定是禁用还是启用它(参见 tinytimgames 帖子)对于整个项目或只是 Cocos2d 文件。

选择1.01版本,因为我不需要OpenGL ES 2.0功能(请参阅此比较指南),但是现在我发现COCOS2d 2.x更好地支持ARC,我觉得有点愚蠢,因为在我看来,Cocos2d 2.0确实是新游戏的前进方向。

参见引用:"cocos2d v2.0 与 v1.1 一样,符合 ARC,但在内部不使用 ARC。但是在某些时候,v2.0 将在内部迁移到 ARC(cocos2d v2.0 在内部使用块,但不使用 ARC)"(它提到了 cocos2d v2.0 而不是 v1.x,所以我假设开发人员的贡献重点是 v2.0,v1.x 维护它的人会更少)。这是对的吗?对我来说,这是将Coco2d 2.x用于新项目的一个重要原因!!

我在 2 个月前开始开发我的游戏,但在此期间我正在学习,所以我的速度很慢,我仍然可以准时迁移到 2.x。

有什么建议吗?我该怎么办?

  1. 禁用 ARC

  2. 启用 ARC

  3. 迁移到 Cocos2d 2.x

谢谢!

对于新用户,我绝对推荐使用 ARC(实际上我向所有人推荐)。

除非您真的必须支持第一代和第二代设备,否则请选择cocos2d 2.0。在此细分中,您会发现OpenGL ES 1.1设备的市场份额越来越小,现在几乎可以忽略不计 - 特别是如果您考虑到使用最旧的设备测试游戏所需的额外开发时间(等于成本),并可能优化旧设备的性能。

以下是一些需要考虑在 cocos2d 1.x 和 2.x 之间进行选择的其他要点。当然还有如何在 cocos2d 中启用 ARC。最后,如何不打扰,只是开始使用带有 Kobold2D 的 ARC(v2.0 即将推出)。

关于禁用或启用 ARC,这完全取决于您对处理自己的内存分配和释放的舒适度。

您可能不想使用 ARC

的唯一原因是您的游戏仅受运行 iOS 5 及更高版本的设备支持,但是采用率似乎很高,所以我不一定排除使用 ARC

编辑

查看 cocos2d v2 的发行说明后,似乎许多悬而未决的问题已得到解决,并且添加 ARC 支持似乎也很有益。如果我刚开始,我可能会选择最新的稳定版本

此链接应有助于从 v1 迁移到 v2

http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:migrate_to_v2.0

最新更新