Vous avez 3 options principales:
Option n ° 1: (la plus robuste, mais la plus intensive en CPU)
En temps réel, calculez les zones d'angle suffisamment larges pour que le PNJ puisse se cacher et ne soient pas exposées au joueur. Choisissez le plus proche pour que le joueur se cache.
Cela fonctionnera à n'importe quel niveau qui est agréable et à des niveaux avec une géométrie qui change pendant le gameplay. Mais cela prendra plus de temps pour fonctionner de manière cohérente et utilisera jusqu'à la plupart des ressources CPU pendant le jeu.
Option n ° 2: (Économisez du temps de concepteur de niveau, hit minimal en temps réel)
Créez un outil hors ligne qui effectue le test de coin, puis place les nœuds dans votre niveau pour toutes les zones de couverture potentielles. Les LD peuvent ensuite modifier ces nœuds ou supprimer ceux qui ne sont pas appropriés.
Pendant le jeu, trouvez simplement le nœud valide le plus proche.
C'est bien car votre routage de recherche de coin n'a pas besoin d'être précis à 100% car les LD peuvent éliminer quelques mauvais nœuds ici et là. Cependant, je ne peux pas répondre aux changements de géométrie, sauf si vous commencez à être intelligent en les attachant à des objets ou en les scriptant.
Option n ° 3: (Brute Force, coup minimal en temps réel)
Demandez aux LD de placer manuellement tous les nœuds de couverture, puis choisissez simplement le nœud valide le plus proche pendant le jeu.
Si vous avez beaucoup de niveaux ou de grands niveaux, attendez-vous à ce que les LD se plaignent.