有人可以向我解释这里发生的事情吗?当我打印出DeltaTime变量时,它是一个合理的数字。当我在任何数学运算中使用它时,它会导致结果非常高。
var Test = 0;
function
Update(DeltaTime)
{
Test += DeltaTime;
console.log(DeltaTime);
console.log(Test);
}
function
Render()
{
Context.clearRect(0, 0, DefaultCanvasWidth, DefaultCanvasHeight);
RenderPlayer();
}
function
GameLoop()
{
CurrentTime = Date.now();
var DeltaTime = (CurrentTime - LastTime) / 1000;
LastTime = CurrentTime;
Update(DeltaTime);
Render();
requestAnimationFrame(GameLoop);
}
GameLoop();
这是输出
main.js:31 0.02
main.js:32 1423402123.8969905
main.js:31 0.029
main.js:32 1423402128.9259906
main.js:31 0.022
main.js:32 1423402133.9479907
main.js:31 0.029
main.js:32 1423402138.9769907
main.js:31 0.032
main.js:32 1423402144.0089908
main.js:31 0.022
main.js:32 1423402149.0309908
main.js:31 0.028
main.js:32 1423402154.058991
main.js:31 0.023
main.js:32 1423402159.081991
main.js:31 0.029
main.js:32 1423402164.110991
main.js:31 0.019
main.js:32 1423402169.129991
main.js:31 0.03
main.js:32 1423402174.159991
main.js:31 0.033
main.js:32 1423402179.192991
main.js:31 0.021
main.js:32 1423402184.213991
main.js:31 0.029
main.js:32 1423402189.242991