我如何编程每秒帧数

How do I program frames per second

嘿,我是一年级学生,我想尝试使用 html、javascript、css 和 [=61 在我的网站上制作一个简单的 2D 游戏=].我仍在写下我将如何去做,但我卡在了每秒帧数是如何产生的,它们是神奇地出现在我的游戏中还是我需要自己编程。我之前写过一个简单版本的口袋妖怪系列,你可以四处走动,随机遇到怪物,它们只是有不同的等级和属性。然而,角色每次点击都会走 16px,而他不能一步步走 16px。这就是我想要的,但我无法理解它。

现在我想设计一些类似的东西,一个四处走动、收集东西并沿途做小任务的角色。我希望角色和 NPC 都能顺利行走。

我想知道如何让我的游戏达到 60fps,每次我按下一个按钮 60 帧,每 1 秒我想让我的角色走一些像素,举个例子32 个像素,但他必须在 30 帧 0.5 秒内走完所有 32 个像素。我该如何编码?

我正在寻找一个非常特殊的答案,您可能无法从上面的文字中得到我想要的东西,所以我将列出我不想要的答案以使其更容易。

不是寻找:

我正在寻找:

我已经尝试找到答案的内容:

我不确定我是否使用了正确的搜索词,但我使用了很多涉及 "Coding fps"、"Frame rates per second programming"、"programming the core of the game" 的搜索词,但我不能找到它。如果您知道更好的方法来解决我的问题或知道更好的搜索词,请也告诉我。

例如在 javascript 中,为了制作游戏我会使用 'draw loop'。

例如,如果我有一个字符,我想以每秒 60 帧的速度每帧向左移动 1 个像素,我会这样做:

    var fps = 60; 
    var charX = //Whatever your charachters x position
    function moveChar(){
        charX++;
    };

    var loop = setInterval(moveChar,1000/fps);

显然 moveChara 看起来会非常不同。这段代码——如果你添加了所有必要的部分,精灵将以 60 fps 的速度移动。您仍然需要一张图片(使用 JS 动态添加或使用 HTML)

这是针对普通 JS 和 html 的。