6

所以我构建了一个我希望成为一个简单的安卓游戏的东西。我首先构建了一个网络版本以使其正常工作 ( http://scolvin.com/ballgame ),然后将其移至 PhoneGap 并使用加速度计来控制游戏。唯一的问题(这是一个节目停止问题)是结果非常慢(我猜大约每秒更新一次,而不是 20 毫秒)。

在没有当前解决方案的情况下,这就是 phonegap 有多慢吗?还是我缺少一些金子弹?

游戏使用easeljs和box2d-web。

奇怪的是,它似乎在 android chrome 上以合理的速度运行,但在 android 的“浏览器”(我似乎记得它是基于 firefox 的?)和可能使用相同的 html 渲染器/js 中断器的 phonegap 上却非常慢。

我尝试过简化游戏,尽可能多地摆脱,使用setInterval而不是accelerometer.watchAcceleration全部无济于事。

4

3 回答 3

2

而不是使用 setInterval() 来处理 FPS 的事情,你必须使用 requestAnimationFrame() 效率更高

iOS 5+ 和 Android 3+ 使用 Canvas 的硬件加速,因此您至少需要这些设备才能获得稳定的性能。iOS 5.0 和 Android 3.0 之前的任何东西都将使用软件渲染来使用 CPU。

所以需要记住这一点

于 2013-05-27T13:44:35.830 回答
2

是安卓浏览器的问题

请参阅以下答案:

Sencha Touch 2 - 安卓性能

(这是给煎茶触摸的,但我认为答案的要点是相同的)

于 2013-05-27T13:49:52.603 回答
1

渲染或读取加速度计是否存在性能问题?也许您可以创建一个演示模式来检查它在没有用户输入的情况下的行为。

于 2013-04-10T12:50:18.250 回答