Je travaille actuellement sur A * pathfinding sur une grille et je cherche à lisser le chemin généré, tout en considérant l'étendue du personnage qui se déplace le long de celui-ci. J'utilise une grille pour la recherche de chemin, mais le mouvement des personnages est en itinérance libre, pas un mouvement strict de tuile à tuile.
Pour obtenir un chemin plus fluide et plus efficace, je fais des traces de ligne sur une grille pour déterminer s'il y a des tuiles impossibles à parcourir entre les tuiles pour raser les coins inutiles.
Cependant, comme une trace de ligne a une étendue nulle, elle ne prend pas en compte l'étendue du caractère et donne de mauvais résultats (ne renvoyant pas de tuiles irrécupérables simplement manquées par la ligne, provoquant des collisions indésirables).
Donc, ce que je recherche, c'est plutôt qu'un algorithme de ligne qui détermine les tuiles en dessous, j'en cherche un qui détermine les tuiles sous une ligne d'étendue à l'échelle de la tuile. Voici une image pour aider à visualiser mon problème!
Quelqu'un a-t-il une idée? J'ai travaillé avec la gamme Bresenham et d'autres alternatives, mais je n'ai pas encore compris comment résoudre ce problème spécifique.