使用 cocos2d 应用程序降低功耗的可能性

Posted

技术标签:

【中文标题】使用 cocos2d 应用程序降低功耗的可能性【英文标题】:Possibilities to reduce power consumption with cocos2d apps 【发布时间】:2011-06-06 14:02:20 【问题描述】:

我制作了一个棋盘游戏,其中仅包含一些小动画。我将 fps 从 60 降低到 30 以减少处理器负载。但是设备仍然很热。 另一个没有使用 cocos2d 的应用程序不会对它进行太多加热。 有什么方法可以让 iPhone 平静下来吗? 设备状态如下:

Wifi 始终处于启用状态 该应用使用游戏中心 GPS 未激活 fps 始终为 30 我使用 cocos2d-iphone 作为引擎

【问题讨论】:

您使用互联网连接吗?如果经常这样?你用openfeint还是游戏中心?你用gps吗?当您不制作动画时,您是否将 fps 降低到 4。你用的是什么游戏引擎(coccos-2d?,原始的open gl,核心动画?)... 【参考方案1】:

可能值得尝试不同的导演类型,例如kCCDirectorTypeNSTimer,看看是否有帮助。这些将对游戏的主循环产生最大的影响。

如果您还没有使用 Instruments,您还应该花一些时间,因为这会告诉您 CPU 将时间花在哪里,并提示您可以在哪些方面缓解问题。

【讨论】:

【参考方案2】:

我注意到 cocos2d 中的一系列小时间动画需要大量的处理器时间。我已经尝试在大小会脉冲的级别上制作提示。脉冲上升 0.1 秒,下降 0.15 秒,停留 0.2 秒。我已经把它放在一个永远重复的序列中。一切都非常缓慢。然后我刚刚手动制作动画,设备平静下来,fps 恢复到 60

【讨论】:

你能解释一下吗?我们的游戏有很多Action,持续时间不到一秒。我们该如何解决? @Emadpres:cocos 自从我上次使用它以来发生了很大的变化,所以我建议对游戏进行分析(xcode 中有分析器),看看实际的瓶颈是什么。对于动画,基本上我是在 sprite 的 update 方法中手动实现动画(通过切换帧)【参考方案3】:

当显示不需要动画的菜单或对话框时,您实际上可以进一步降低帧速率。

【讨论】:

以上是关于使用 cocos2d 应用程序降低功耗的可能性的主要内容,如果未能解决你的问题,请参考以下文章

低功耗设计

使用XTU降低CPU功耗,自动执行不失效

资产设备研发中,软件可以从哪些方面降低功耗?

蓝牙5.0的新特点及应用前景

003 CMOS功耗分析

003 CMOS功耗分析