Bonjour,
Dans mon petit projet, j'ai un personnage qui se déplace sur un terrain, le tout en 2D. Il y a des obstacles de forme rectangulaire qui sont infranchissables.
Mon algo de test de collision marche très bien, il bloque le mouvement du personnage dès q'une collision est détectée, en prenant en compte la direction du personnage.
Mon problème est que dès que le personnage est en collision avec un obstacle, il ne peut que se déplacer en arrière avant d'avoir les 4 directions de nouveau disponible.
Par un exemple, imaginons que mon personnage se déplace vers la droite. Il rencontre un obstacle. Aïe! Mon problème est qu'à ce moment là, il ne peut pas se déplacer ni vers la droite, ni vers la gauche. Il doit au minimum reculer de quelques pixels pour pouvoir se déplacer vers la droite ou la gauche (et vers l'avant aussi, mais il sera de nouveau vite bloqué!).
La vitesse du personnage étant un paramètre modifiable, je ne peux pas faire reculer mon perso de x pixels avec x constant avant d'afficher la frame.
Auriez-vous une idée de solution?
Merci de votre attention,
billy
Partager