修复游戏循环到60fps使动画非常紧张

时间:2014-07-20 09:17:00

标签: java game-engine frame-rate game-loop

ns是1000000000 / amountOfTicks;

    long now = System.nanoTime();
    delta += (now - lastTime) / ns;
    lastTime = now;

    if (delta >= 1) { 
        tick(glad);
        updates++;
        delta--;
        fps_counter = 0;
    }

    if (delta >= fps_counter / FramesPerTick) { // render
        fps_counter++;
        frames++;
        render(glad);
    }

    if (System.currentTimeMillis() - timer > 1000) {
        timer += 1000;
        frame.setTitle("Ticks: " + updates + " Fps: " + frames);
        updates = 0;
        frames = 0;
    }

所以,如果我有20个刻度和3个FramesPerTick,我得到60fps 它会在delta大于1 / 3,2 / 3和3/3时检查,因此每个tick都有3帧

一切都是紧张,动作,鼠标外观。 动画越来越紧张,FPS越低,我不明白为什么。

此外,当我从if中取出渲染(高兴)方法时,它会上升到400 fps并且运行非常顺利。

0 个答案:

没有答案