所以我构建了我希望成为一个简单的安卓游戏。我首先建立了一个网络版本来使它工作(http://scolvin.com/ballgame)然后将其移动到PhoneGap并使用加速度计来控制游戏。唯一的问题(它是一个显示停止问题)是结果是非常缓慢的(我估计每秒一次而不是20ms的更新)。
这只是手机缓慢的速度,目前没有解决方案吗?或者是否有一些我失踪的金色斑点?
该游戏使用了easeljs和box2d-web。
奇怪的是它似乎在Android Chrome上以合理的速度运行,但在Android的#34;浏览器" (我似乎记得它基于firefox?)和phonegap,大概使用相同的html渲染器/ js中断器。
我尝试过简化游戏,尽可能地摆脱游戏,使用setInterval
而不是accelerometer.watchAcceleration
都无济于事。
答案 0 :(得分:2)
不要使用setInterval()进行FPS操作,而必须使用requestAnimationFrame()它效率更高
iOS 5+和Android 3+使用Canvas的硬件加速,因此您需要至少使用这些设备才能获得可靠的性能。 iOS 5.0和Android 3.0之前的任何东西都将使用CPU进行软件渲染。
所以需要牢记这一点
答案 1 :(得分:2)
答案 2 :(得分:1)
渲染或读取加速度计会导致性能问题吗?也许您可以创建一个演示模式来检查它在没有用户输入的情况下的行为。