Partage
  • Partager sur Facebook
  • Partager sur Twitter

Deplacement AI pour un jeu

Aller d'un point A à un point B en evitant les obstacles

    6 mai 2015 à 12:13:59

    Salut.

    Je suis en train de créer un jeu de tower defense en 3D pour Android (avec LibGDX).

    Je voudrai savoir qu’elle est la meilleure méthode pour faire avancer les robots du point de départ jusqu’à l’arrivée.

    L’idée c’est que sur ma map il y aura plusieurs chemins possibles et les robots devront choisir le chemin le plus court.

    Si le joueur place une tour sur le chemin, les robots devront contourner cette tour, et si il n’y pas de place pour la contourner, ils prendront un autre chemin.

    Et un petit dessin pour représenter tout ça :

    Pour l’instant, la seule méthode que j’ai trouvé c’est :
    -    Au départ, les robots se déplacent sur l’axe X : robot.setSpeed(1,0) ;
    -    Quand ils arrivent au point A : robot. setSpeed (0,-1) ;
    -    Quand ils arrivent au point B : robot. setSpeed (-1,0) ;
    -    Quand ils arrivent au point C : robot. setSpeed (0,-1) ;

    Cette méthode ne prend pas en compte le chemin, ni les tours qui peuvent bloquer le passage.

    Quelle est la meilleure façon de faire tout ça ?

    -
    Edité par zobiwone 6 mai 2015 à 12:15:55

    • Partager sur Facebook
    • Partager sur Twitter
      6 mai 2015 à 12:20:59

      Ton jeu utilise un système de tuiles ?

      Voici une piste : Depth First Search

      -
      Edité par LeSuricateFurtif 6 mai 2015 à 12:24:03

      • Partager sur Facebook
      • Partager sur Twitter
      Un de ces quatre, viens faire un tour sur Zeste de Savoir !
        6 mai 2015 à 14:08:13

        Sinon tu as ça aussi :)

        Mais je préfère Dijkstra où :
        Tu cherches toutes les cas parcourables avec un distance de n, si ton arrivée n'est pas là alors tu testes pour n+1 !

        -
        Edité par IQbrod 6 mai 2015 à 14:09:55

        • Partager sur Facebook
        • Partager sur Twitter
        OpenClassrooms retire tellement d'aiguilles de nos pieds qu'on pourrait ne plus trouver le foin de notre botte :)
          6 mai 2015 à 14:12:55

          zobiwone a écrit:

          Quelle est la meilleure façon de faire tout ça ?


          Il n'y a pas de bonne ni de mauvaise tout comme il n'y a pas de pire ni de meilleur de façon générale.
          Tout dépend spécifiquement de ton programme et de ce que tu veux en faire. Ici tu ne nous indique pas comment est réalisée ta grille et donc de manière générale on ne peut pas te dire lequel est vraiment le meilleur, c'est pourquoi nous te proposons diverses des methodes :)

          • Partager sur Facebook
          • Partager sur Twitter
          OpenClassrooms retire tellement d'aiguilles de nos pieds qu'on pourrait ne plus trouver le foin de notre botte :)

          Deplacement AI pour un jeu

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown