J'ai un jeu situé dans l'espace, et j'aimerais émettre des ordres de mouvement, ce qui nécessite un cheminement. Maintenant, je crois comprendre que A * et autres s'appliquent principalement aux arbres, et non à l'espace vide qui n'a pas de nœuds d'orientation. J'ai quelques obstacles, qui sont actuellement exprimés en AABB fixes - c'est-à-dire qu'il n'y a pas d'obstacle "terrain" illimité. De plus, je m'attends à ce que la plupart des obstacles soient raisonnablement approximables sous forme de cubes ou de sphères.
J'ai donc pensé à appliquer un algorithme de recherche de chemin beaucoup plus simple, c'est-à-dire simplement lancer un rayon de la position actuelle à la position cible, puis je peux obtenir une liste des obstacles en utilisant le partitionnement spatial relativement rapidement. Je ne suis pas sûr de savoir comment déterminer la partie où l'unité commandée manoeuvre autour des obstacles.
Ce que j'ai pensé jusqu'à présent, c'est que j'utiliserai simplement des champs potentiels, c'est-à-dire que toutes les unités ressentiront une force de répulsion forte les unes des autres et une force modérée vers le point souhaité. Cela a également l'avantage que pour émettre des ordres de groupe, je peux simplement commander une force de niveau intermédiaire vers une autre entité. Mais cela n'atteindra évidemment pas la solution optimale.
Les champs potentiels atteindront-ils une approximation raisonnable compte tenu de mes paramètres, ou ai-je besoin d'une autre solution?
la source