【发布时间】:2012-12-09 09:29:30
【问题描述】:
我正在编写一个 HTML5 游戏开发 Javascript 框架,我想为用户提供上一个刻度和当前刻度之间的时间差。
setInterval(tick, 16.6666666);
function tick() {
update();
draw();
}
这就是我拥有的,但我想拥有:
while (true) {
/* Calculate delta time */
tick(dt);
}
function tick(dt) {
update(dt);
draw();
}
我试过了,使用 date.getTime();计算增量时间,但 Firefox 说脚本崩溃了。显然,无限循环会崩溃。有什么建议可以解决这个问题吗?
我想要一个无限循环,可以用break 停止。我也想通过增量时间,但我知道该怎么做。
【问题讨论】:
-
为什么要无限循环?无限循环使浏览器崩溃。
-
@Bergi 他更有可能来自像 c 或 c++ 这样的本地语言,其中主循环必须继续循环直到游戏完成,例如( while( isDone == false ){ // 运行游戏,计算增量时间,设置滴答速度等 } )
标签: javascript html loops timedelta