deltaTime="NaN"

来源:2-5 果实绘制(果实上浮)

大空翼God

2015-10-01 19:10

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

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

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

写回答 关注

5回答

  • 默小柒
    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

    一样的问题,求解决!

    大空翼God

    可以尝试用chrome浏览器 开发者模式Source面板 断点看看是不是读到了变量数据

    2015-12-16 22:00:44

    共 1 条回复 >

  • 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

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

HTML5小游戏---爱心鱼(上)

学做HTML5游戏,轻轻松松带你上手,适合刚入手游戏开发的同学

92348 学习 · 551 问题

查看课程

相似问题