J'ai essayé de faire un mouvement de base de tuile dans XNA mais je ne sais pas comment. Mes tuiles sont 32x32, et sprite est la même taille.Mouvement de base de tuile
Voici le code que j'utilise pour déplacer sprite:
if (Keyboard.GetState().IsKeyDown(Keys.Up))
{
Position.Y -= Speed.Y;
}
if (Keyboard.GetState().IsKeyDown(Keys.Down))
{
Position.Y += Speed.Y;
}
... et même avec les autres 2 clés.
Je veux que mon sprite se déplace en douceur, une seule tuile exacte à la fois, mais pas "sauter" sur la tuile. Désolé pour mon mauvais anglais, et merci.
OK, mais l'image-objet s'arrête de bouger lorsque j'arrête d'appuyer sur la touche et n'atteint pas l'autre carreau. La vitesse est: 32 * gameTime.ElapsedGameTime.TotalSeconds; – Isheros
vous devez définir une position cible, plutôt que de simplement appuyer sur la touche. Donc, définissez un champ qui indique la position cible et continuez à vous déplacer jusqu'à ce que cette valeur soit atteinte. –