Niveaux procéduraux

Les décors sont générés procéduralement. L’avantage c’est que je peux générer des niveaux indéfiniment mais tout n’est pas aussi simple.

Pour commencer la camera, qui suit une trajectoire linéaire sur l’axe des X peut se retrouver à l’intérieur d’une montagne par exemple. Mais comment ne pas se retrouver avec un point de vue à l’intérieur du décors ?

On pourrait faire que la camera suive le relief en prenant de l’altitude. On pourrait également utiliser l’algorithme du « path finding » afin de déterminer un chemin à travers le niveau. Pour l’instant pour les premiers tests j’ai décidé de modifier les générateurs de décors en créant un couloir autour de la camera. Ca fonctionne pour mes deux types de niveaux on verra par la suite comment aller plus loin.

Les ennemies doivent être placés le long du chemin de la camera et commencer à se déplacer dès qu’ils se retrouvent dans le champs de la camera. J’utilise l’opérateur « WaveEmitteur » qui prend en paramètre le nombres de vagues d’acteurs à positionner le long du chemin de la camera et le nombres d’acteurs par vague. Les vaques sont espacées en fonction d’un temps fixe, certainement je rajouterais un temps aléatoire plus tard. Par « WaveEmitteur » on ne peut choisir qu’un seul type d’acteur. On peut spécifier l’IA des acteurs grâce à un opérateur, ici on utilise « IA_MonsterShip01 » qui ajoute un comportement d’attaque dès que le joueur est proche.