小编Kat*_*ne1的帖子

Javascript计时器延迟

我决定玩HTML5的画布,当然这意味着我要尝试写一个乒乓球游戏.目前,我正在试图找出如何限制我的帧率.这在其他语言中相当容易,但找到一种延迟Javascript执行的方法似乎有点困难.

这是我到目前为止:

while(true) {
    var begin = (new Date()).getTime();

    //Draw stuff to the canvas

    var end = (new Date()).getTime();
    if ((end-begin) < 33.333 ) {
        //delay (1000/(30-(end-begin)))
    }
}
Run Code Online (Sandbox Code Playgroud)

显然,由于每个javascript引擎的执行方式,帧速率会大不相同,但我希望将最大帧速率限制在30FPS.我真的没有看到setTimeout()将如何完成此任务.最好的方法是什么?

javascript timer delay html5-canvas

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

delay ×1

html5-canvas ×1

javascript ×1

timer ×1