一段时间后 cocos2d 代码变慢

Posted

技术标签:

【中文标题】一段时间后 cocos2d 代码变慢【英文标题】:cocos2d code slow down after some time 【发布时间】:2011-01-27 14:23:39 【问题描述】:

全部 我正在 cocos2d 中制作游戏,我正在通过 CCTouchBegan、CCTouchMoved、CCTouchEneded(ccp 函数)将一个对象从一个地方移动到另一个地方,然后我对其进行操作。 关于为什么此代码在设备上运行缓慢但在 iphone 模拟器上运行速度快的任何想法。

【问题讨论】:

【参考方案1】:

向我们展示代码,然后我们可以说一些特别的东西。 但我认为你只是忘了停止行动。 [对象停止动作]; 或者可以使用这个方法 [self removeChild:(CCSprite*)sender cleanup:YES] 它还会根据清理参数清理所有正在运行的动作

【讨论】:

好建议。是的,我们确实需要查看更多代码才能进行任何类型的评估。您使用什么代码将对象从一个地方移动到另一个地方?您可能希望使用 Instruments 分析您的代码,以便了解您的大部分工作在哪里完成。你能回溯到代码中运行速度快的前一点吗?【参考方案2】:

代码在设备上的运行速度通常比在模拟器中慢。模拟器在性能方面并不准确。为了衡量某项操作的执行速度,您必须在设备上进行尝试。

【讨论】:

【参考方案3】:

检查您的内存分配。

我也有同样的问题。 bcoz 的内存管理。现在我解决了。

使用 xcode 中的性能工具检查内存泄漏。

【讨论】:

以上是关于一段时间后 cocos2d 代码变慢的主要内容,如果未能解决你的问题,请参考以下文章

如何在cocos2d中隐藏一定时间后的标签(CCLabel)?

如何在 Cocos2d 中暂停和恢复

升级到 Cocos2d 2.1 后 AppDelegate 报错

cocos2d如何分割大图,使其显示在cocos2d中

如何在 cocos2d 中为图层添加滚动?

在 cocos2d 中停止 Sprite 动画