Drone IA
Publié : 13 Juin 2019 09:51
Bonjour à tous,
Je cherche à reproduire un petit jeu afin de m'exercer sur certains principes: FuturCop L.A.P.D.
Je suis sur l'IA des drones. Le comportement n'est pas trop mal, mais... pas encore top. J'ai fait un principe de déplacement aléatoire simple:
- Je définis un point aléatoirement dans un rayon max par rapport à un transform: mon DroneCenter.
- Si mon drone dépasse ce rayon, je génère une nouvelle destination.
- Si mon drone détecte un ennemie la destination est cette ennemie avec un offset pour ne pas aller dans le sol. Le rayon max s'agrandit pour les drones qui ont une target.
J'ai voulu faire un test de détection d'obstacles, mais je ne trouve pas très concluant.
Pour ça, je fais avec un RayCast et une distance max. Si il détecte un obstacle, il génère une nouvelle destination.
Comme le dernier point ne me plait pas trop j'ai voulu essayé par curiosité ce principe avec un NavMesh, mais je n'ai pas trouvé comment utiliser le NavMesh pour avoir le système de PathFinding en gérant comme je veux le déplacement (surtout pour la position en Y). Est ce que quelqu'un à des pistes pour modifier le NavMeshAgent ?
Sinon est ce que quelqu'un à de meilleures idées pour la détection des obstacles
EDIT: Est ce que vous avez déjà essayer la gestion de "drone" avec la programmation type ECS ? Qu'est ce que ça vaut ?
Je cherche à reproduire un petit jeu afin de m'exercer sur certains principes: FuturCop L.A.P.D.
Je suis sur l'IA des drones. Le comportement n'est pas trop mal, mais... pas encore top. J'ai fait un principe de déplacement aléatoire simple:
- Je définis un point aléatoirement dans un rayon max par rapport à un transform: mon DroneCenter.
- Si mon drone dépasse ce rayon, je génère une nouvelle destination.
- Si mon drone détecte un ennemie la destination est cette ennemie avec un offset pour ne pas aller dans le sol. Le rayon max s'agrandit pour les drones qui ont une target.
J'ai voulu faire un test de détection d'obstacles, mais je ne trouve pas très concluant.
Pour ça, je fais avec un RayCast et une distance max. Si il détecte un obstacle, il génère une nouvelle destination.
Comme le dernier point ne me plait pas trop j'ai voulu essayé par curiosité ce principe avec un NavMesh, mais je n'ai pas trouvé comment utiliser le NavMesh pour avoir le système de PathFinding en gérant comme je veux le déplacement (surtout pour la position en Y). Est ce que quelqu'un à des pistes pour modifier le NavMeshAgent ?
Sinon est ce que quelqu'un à de meilleures idées pour la détection des obstacles
EDIT: Est ce que vous avez déjà essayer la gestion de "drone" avec la programmation type ECS ? Qu'est ce que ça vaut ?