【发布时间】:2011-11-19 16:50:34
【问题描述】:
我想知道是否应该将我的游戏切换到 requestAnimationFrame。如果还有理由再这样做,正如我所读到的,当您在主要浏览器中切换标签时,setTimeout() 现在也会暂停。
无论如何,假设我想控制动画的 FPS。
目前我可以这样做:
k.state.loopinterval =
window.setInterval(renderLoop(), 1000 / k.settings.engine.fps );
k.settings.engine.fps 是所需的 fps。
如果我以requestAnimationFrame 的方式进行操作,我将失去这种可能性,它只会给我它所能给的一切:
window.requestAnimFrame(k.operations.startLoop);
renderLoop();
我看到有人建议将 requestAnimFrame 放在另一个循环中:
setInterval( function () {
requestAnimationFrame( draw );
}, 1000 / 60 );
那么...我应该选择什么?保持原样?
requestAnimationFrame 的确切好处是什么,既然 setTimeout 在切换选项卡时也会暂停?
【问题讨论】:
标签: javascript html settimeout requestanimationframe