【发布时间】:2012-04-29 08:48:03
【问题描述】:
我通过做来限制游戏中的每秒帧数。
graphics.SynchronizeWithVerticalRetrace = false;
IsFixedTimeStep = false;
但现在我的精灵/玩家移动速度比以前快了。我不知道为什么会这样,也不知道如何解决。
if (keyboard.IsKeyDown(Keys.W) || keyboard.IsKeyDown(Keys.Up))
{
position.Y -= spd;
}
if (keyboard.IsKeyDown(Keys.A) || keyboard.IsKeyDown(Keys.Left))
{
position.X -= spd;
}
if (keyboard.IsKeyDown(Keys.S) || keyboard.IsKeyDown(Keys.Down))
{
position.Y += spd;
}
if (keyboard.IsKeyDown(Keys.D) || keyboard.IsKeyDown(Keys.Right))
{
position.X += spd;
}
这就是我目前让精灵移动的方式。 spd = 4 目前。它运行得非常好,但现在它的移动速度似乎快了 2000 倍。只需轻按其中一个键,他就会离开屏幕。
我们将不胜感激。
【问题讨论】:
-
编写与帧速率无关的代码的令人信服的理由
-
@bkconrad:显然 OP 从未尝试过,也许从未听说过这个概念。
-
-1 请在询问此类问题之前尝试完成并理解一些基本教程。此外,一个简单的搜索就可以提供答案和其他额外信息。
标签: c# xna sprite frame-rate