Si vous développez l'IA pour la première fois, vous n'avez pas à vous soucier d'éléments tels que le modèle d'état, les mathématiques comportementales ou même obtenir un livre sur le sujet.
Vous pouvez littéralement vous en tirer avec quelque chose comme ceci:
if( targetInRange == true )
{
FireAtTarget();
}
else if( bulletComingTowardsMe == true )
{
MoveAwayFromBullet();
}
else
{
WanderAroundAimlessly();
}
Pour obtenir une bonne intelligence artificielle, le principal aspect consiste à réfléchir aux comportements que vous souhaitez que le personnage adopte et à la manière dont cela peut être réalisé de manière réaliste. Donc, pour un ennemi de base d'un vaisseau spatial, j'imagine que les actions possibles pourraient être les suivantes:
Et quand ces actions pourraient-elles se produire?
- Se déplacer - Rien d'autre à faire
- Feu - Quand je repère un ennemi
- Fuir - Quand je suis en mauvaise santé / Quand je prends le feu / etc.
Une fois que vous avez fait cela en raison du faible nombre d '"états" dans lesquels votre personnage peut se trouver, vous pouvez utiliser une simple instruction if comme celle ci-dessus. Je vous recommanderais alors d’examiner les comportements de direction car il s’agit de comportements très simples à mettre en œuvre et pouvant donner lieu à de très beaux mouvements.
Plus d'informations peuvent être trouvées ici: http://www.red3d.com/cwr/steer/
Et je recommanderais certainement le livre de Mat Buckland, Programming Game AI par exemple , en particulier lorsque vous débutez.
Lorsque vous êtes vraiment à l'aise avec ceux-ci, je suggérerais d'examiner l'état et les modèles de stratégie.
Le but est de commencer petit et simple. Ne vous inquiétez pas de tous ces termes que tout le monde parle sans cesse des FSM et des modèles de conception, etc. Tout d’abord, concevez et construisez, puis demandez-vous comment l’améliorer en utilisant des méthodes ou des normes existantes.
J'espère que ça t'as aidé!