问答详情
源自:2-5 果实绘制(果实上浮)

deltaTime="NaN"

在chrome下用断点运行,发现在

this.y[i] -= XXX * deltaTime; 

这一步的时候总是出现deltaTime为NaN的情况,不知道是怎么回事

提问者:大空翼God 2015-10-01 19:10

个回答

  • 默小柒
    2016-03-08 14:11:35

    deltaTime应该在前面定义

    function game(){

    init();

    lastTime = Date.now();

    deltaTime = 0;

    gameloop();


    }

    如果在这里没有定义,那么lastTime就是undefined,那么下面的

    deltaTime = now -lastTime;

    就会是时间戳减去undefined,所以就是NAN,就会一直NAN

    function gameloop(){

    window.requestAnimationFrame(gameloop);     //2

    var now =  Date.now();

    deltaTime = now -lastTime;

    lastTime = now;

    drawBg();

    sea.draw();

    fruit.draw();

    }



    可以在最开始的位置打印deltaTime,lastTime,这几个变量,看看自己的代码具体是哪没有赋值


  • 不完美
    2015-10-23 20:34:49

    一样的问题,求解决!

  • Xiaoti_mo
    2015-10-19 14:53:53

    我现在也出现这个问题,你们现在解决了吗

  • 佐籽剑
    2015-10-13 23:00:23

    我也有这个问题!主要是因为加了 this.l[i] = 0.05*deltaTime后运行程序不出现orange的图片……

  • 大空翼God
    2015-10-01 23:31:14

    对不起,大家忽略这一条。检查发现是代码问题。