瓷砖基地运动

时间:2012-07-16 04:37:25

标签: c# xna-4.0

我试图在XNA中进行Tile-Base运动,但我不知道如何。我的图块是32x32,精灵的大小相同。

这是我用来移动精灵的代码:

    if ( Keyboard.GetState().IsKeyDown(Keys.Up))
    {
        Position.Y -= Speed.Y;
    }
    if ( Keyboard.GetState().IsKeyDown(Keys.Down))
    {
        Position.Y += Speed.Y;
    }

......与其他2把钥匙相同。

我希望我的精灵移动平滑,当时一个精确的平铺,但不是“跳”到平铺。 抱歉我的英语不好,谢谢。

1 个答案:

答案 0 :(得分:0)

你需要根据已经过的时间来改变精灵的位置。

因此,如果你的速度是每秒32像素,并且经过的时间是第60秒(60fps),那么你需要每次更新只移动精灵32 * (1/60)像素。

使用Update(GameTime gameTime)参数获取自上次更新以来经过的时间。