Principe de fonctionnement

ADS AI System s’utilise principalement en ajoutant le ADS AI System Component sur l’acteur qui doit posséder une logique d’IA. Dans la majorité des cas, il sera ajouté sur un Character ou Pawn contrôlé par un AI Controller.

Une fois le component ajouté, configurez ses paramètres dans le panneau Details : activation de la perception, vue, ouïe, filtrage des Pawns contrôlés par un joueur et, éventuellement, le Behavior Tree à lancer automatiquement.

Au BeginPlay, le component configure AI Perception. Il cherche ou crée le AI Perception Component nécessaire, configure les sens activés, puis écoute les mises à jour de perception envoyées par Unreal Engine. Si un Behavior Tree est défini, il est lancé automatiquement via l’AI Controller, puis le Blackboard est récupéré pour pouvoir être lu ou modifié depuis le component.

Lorsqu’un Pawn est vu, le système déclenche l’événement dédié à la vision. Si l’option Blackboard correspondante est activée, une clé Bool du Blackboard peut également être mise à true, puis automatiquement remise à false après un délai configurable. Cela permet par exemple d’utiliser une clé bSeePawn dans le Behavior Tree pour changer l’état de l’IA lorsqu’elle voit le joueur.

Lorsqu’un bruit est entendu, le système déclenche l’événement dédié à l’ouïe avec le Pawn instigateur, la position du bruit et son volume. Pour qu’un bruit soit détecté, un événement de bruit doit être correctement émis dans le projet selon le fonctionnement standard d’AI Perception.

Les changements perçus peuvent être exploités de deux manières : en bindant les Event Dispatchers du component, ou en créant un enfant Blueprint du component et en override les fonctions prévues pour la vision, l’ouïe ou les mises à jour brutes d’AI Perception.

Le component fournit également des fonctions Runtime pour activer ou désactiver la perception, modifier les paramètres de vision ou d’ouïe, changer le Behavior Tree et lire ou écrire des clés Blackboard. Une visualisation de debug dans l’éditeur aide à configurer l’origine, les offsets, le rayon de vision et l’angle de perception ; elle ne remplace pas la logique Runtime d’AI Perception d’Unreal Engine.