gpt4 book ai didi

javascript - 限制 Canvas 应用程序的帧速率

转载 作者:行者123 更新时间:2023-11-28 01:52:42 24 4
gpt4 key购买 nike

我已经构建了一个非常基本的平台“引擎”:
[ fiddle 已删除]

当您使用箭头键移动时 - 帧速率在心理上很快!

我尝试使用以下方法限制帧速率:

var fps = 30;
var now;
var then = Date.now();
var interval = 1000/fps;
var delta;

然后在绘制函数中:

now = Date.now();
delta = now - then;
if (delta > interval) {
//redrawing scene here
then = now - (delta % interval);
}

但不幸的是,这仍然具有相同的帧速率,但性能下降(就像跳帧而不是帧速率限制)。

请帮助我! :(

I'll give you a cookie!

最佳答案

我认为您应该检查您的 GameLoop 函数。按照目前的情况,您要求每秒 1000 帧。哎呀!

当我把它编辑成这个时,它给了我大约 33 fps。

    GameLoop: function() { //initialise game loop
Game.Vars.GameLoop = setTimeout(function() {
requestAnimationFrame(Game.Functions.Update, Game.C);
}, 30);
},

你把 30 写成了 1..:)巧克力片,如果可以的话。如果没有,我就吃白巧克力和覆盆子!

编辑:天哪,你成功了! - 一定要喜欢那些为自己写的信息。 :D

关于javascript - 限制 Canvas 应用程序的帧速率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19516307/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com