为什么JS处理和绘画会在每帧结束时发生?

时间:2017-04-21 15:15:36

标签: javascript google-chrome webgl google-chrome-devtools

我的网页基本上是一个我用WebGL更新的画布。我正在尝试获得平滑的水平动画(基本上,就像你在电视上看到的爬行一样)。我的帧都低于16.6毫秒,但动画仍然有小口吃。看看DevTools中的时间轴,看起来所有的工作(JS和绘画)都发生在框架的最后。我想知道这是否导致了口吃。我也不明白为什么这项工作不会在每帧的前10毫秒内发生。

我的渲染循环如下所示:

    function animate(now) {
        requestAnimationFrame(animate);
        crawl.position.x -= STEP_SIZE;
        renderer.render(scene, camera);
        bufferCopy();
    }

enter image description here

0 个答案:

没有答案