【发布时间】:2015-08-13 20:55:27
【问题描述】:
我正在尝试实现一个使用增量时间的游戏循环。我从this article 获得了以下代码,但是我觉得它并不能很好地解释这种类型的游戏循环。我对 requestAnimationFrame 进行了研究,但这些解释似乎都没有用。有人可以简单地分解一下这个循环是如何工作的吗?
function timestamp() {
return window.performance && window.performance.now ? window.performance.now() : new Date().getTime();
},
var now,
dt = 0,
last = timestamp(),
step = 1/60;
function frame() {
now = timestamp();
dt = dt + Math.min(1, (now - last) / 1000);
while(dt > step) {
dt = dt - step;
update(step);
}
render(dt);
last = now;
requestAnimationFrame(frame);
}
requestAnimationFrame(frame);
【问题讨论】:
标签: javascript requestanimationframe game-loop