Le mouvement basé sur une grille ou des tuiles signifie que la position du personnage est restreinte.
Il ne peut se tenir que sur une tuile – jamais entre deux tuiles.
Si je dois programmer le jeu « Lode Runner » le déplacement du héro dois se faire tuile par tuile, afin de tomber bien en face d’une échelle, ou encore d’une brique du sol.

Un autre exemple, PAC MAN le personnage doit impérativement se déplacer de tuile en tuile afin de se parcourir facilement le labyrinthe, ou encore être positionner devant les PAC Gomme !

Voici les sprites utilisés dans le tutoriel :


Le script de déplacement :
using System.Collections; using System.Collections.Generic; using UnityEngine; public class GridDeplacement : MonoBehaviour { private Vector3 startPos, endPos; public bool isMoving = false; public float MoveTime = 0.2f; void Update() { float x = Input.GetAxisRaw("Horizontal"); float y = Input.GetAxisRaw("Vertical"); if (!isMoving) StartCoroutine(MovePlayer(new Vector3(x, y, 0f))); } IEnumerator MovePlayer(Vector3 dir) { isMoving = true; float nextMove = 0f; startPos = transform.position; endPos = startPos + dir; while(nextMove < MoveTime) { transform.position = Vector3.Lerp(startPos, endPos, nextMove / MoveTime); nextMove += Time.deltaTime; yield return null; } transform.position = endPos; isMoving = false; } }