Projet Ogre 3D

J’ai récemment commencé un projet de jeu avec Ogre 3D, ce que je n’avais pu faire avant par manque de temps principalement, mais aussi d’idées. Partant dans l’idée d’un jeu de Tower Defense (j’ai beaucoup aimé le jeu Gemcraft dans le domaine), je me suis cantonné à développer une base simple et jouable du jeu pour la faire évoluer par la suite en ajoutant plus de fonctionnalités. L’idée dans cette démarche est de pouvoir avancer par jalons de taille réduite pour éviter au maximum de me retrouver entre deux fonctionnalités dans une période de manque de temps (ou de baisse de motivation…).

Le jeu consiste en un terrain rectangulaire avec un point de départ et d’arrivée, un chemin menant de l’un à l’autre parcouru par les ennemis contre lesquels la défense consiste à construire des tours, qui vont alors tenter de les détruire avant qu’ils n’arrivent au bout du chemin. Beaucoup de paramètres sont personnalisables via un fichier de configuration, dont le nombre de vagues et d’ennemis par vague, la taille du terrain, la forme du chemin tracé… Tout ceci étant lu à l’aide de TinyXML, un parseur léger et efficace pour les fichiers XML.

L’interface utilisateur, très succincte pour l’instant, utilise la bibliothèque CEGUI, qui a l’avantage d’avoir une base solide de documentation sur le web pour l’intégration avec Ogre. Je n’en utilise en fait que le strict minimum pour afficher les informations essentielles au joueur ainsi que pour le menu.

L’ensemble du code et les ressources graphiques sont disponibles sur github, avec les instructions pour compiler et utiliser le projet.