2013-04-10 107 views
6

所以我建立了我希望成爲一個簡單的Android遊戲。我首先構建了一個Web版本以使其工作(http://scolvin.com/ballgame),然後將其移至PhoneGap並使用加速計來控制遊戲。唯一的問題(這是一個停止演出的問題)是,結果是可怕的慢(更新我猜想每秒鐘一次,而不是20ms是)。PhoneGap遊戲,畫布和緩慢的JavaScript

這是多麼慢的phonegap,沒有當前的解決方案?還是有一些我失蹤的金色子彈?

遊戲使用easeljs和box2d-web。

奇怪的是,它似乎以合理的速度在android chrome上運行,但是在android的「瀏覽器」(我似乎記得基於firefox?)和phonegap中使用相同的html渲染器/ js中斷者。

我試過簡化遊戲,盡我所能擺脫,使用setInterval而不是accelerometer.watchAcceleration都無濟於事。

回答

1

渲染或讀取加速度計時出現性能問題?也許你可以創建一個演示模式來檢查它在沒有用戶輸入的情況下的行爲。

+0

對不起,我應該已經更清楚了。我這樣做,使用'setInterval'而不是'watchAcceleration'來啓動每一步。 – SColvin 2013-04-10 12:54:53

2

而不是使用的setInterval()爲FPS的事情,你必須使用requestAnimationFrame()這是更有效的

iOS 5以上版本和Android 3+使用硬件加速的畫布,所以您需要爲atleast這些設備穩固的表現。在iOS 5.0和Android 3.0之前的任何事情都會使用軟件渲染的CPU。

所以需要記住這一點