定时器使用frameRate和帧计数器可靠吗?

时间:2017-06-21 03:45:35

标签: javascript timer frame-rate p5.js

我正在使用p5js使用计时器倒计时编程动画。我将我的计时器设置为在草图中由draw()函数设置动画的对象内的每个帧中进行更新。因此,setInterval()不适用于我正在尝试的操作。

我以为我可以使用frameRate和一个帧计数器来决定是否已经过了一秒:

this.updateTimer = function(){
  this.framecounter++;
  if(this.framecounter > frameRate()){
    this.framecounter = 0;
    //increment seconds
  }
}

这可靠吗?我在一个实际的计时器上进行了测试,大约15秒后它似乎提前了大约1秒。有没有更好的方法通过每帧调用一个函数来做到这一点?谢谢!

1 个答案:

答案 0 :(得分:1)

为什么不直接使用frameCount变量?有关详细信息,请参阅the reference

您也可以使用millis()功能。同样,the reference是你最好的朋友。

如果仍然无法使其正常运行,请发布我们可以运行的MCVE(或更好的CodePen或JSFiddle)以查看问题。