【发布时间】:2013-01-14 08:06:59
【问题描述】:
我正在构建一个 cocos2d 连续运行的 ios 游戏,其中一个角色被动画化以穿过一个场景。背景、角色脚下的地面和奔跑角色身后的栅栏以相反的方向移动以模拟向前运动。角色本身被动画化以在原地运行。偶尔会有额外的精灵在场景中移动。
我所有的动作(除了角色的原地动画)都发生在更新方法中。
我注意到,当其他精灵移动经过场景时,所有移动部件都会结结巴巴。当没有额外的精灵时,口吃就会消失。
我还注意到,在 ipad 3 (ios 6.0.1) 中几乎察觉不到口吃,而在 iphone 3gs (ios 6.0.1) 和 ipad 1 (ios 5.1.1) 中最为明显,而且中等程度在 iphone 4 (ios 6.0.1) 上很明显。
我不知道从哪里开始解决这个问题 - 我尝试移除额外精灵的实际渲染,并且我还尝试移除角色后面的栅栏 - 但没有任何更改对口吃产生任何影响。
有什么建议吗?
更新:通过运行时间分析器修复它,如下面的@Fogmeister 建议的那样。原来我在每次更新时都在做磁盘 i/o 以查找一些状态变量。我优化了它,所有设备上的口吃都消失了。谢谢!
【问题讨论】:
标签: ios animation cocos2d-iphone