Réalisation d’un jeu de pétanque en 3D avec la wiimote. Les étudiants utilisent les librairie Ogre3D pour dessiner l’environnement de jeu, BulletSDK pour la simulation physique, Fmod pour le son et Wiiuse pour gérer la wiimote.
Ce mini-projet est réalisé en parallèle des cours/tp de C++. Cela permet d’intégrer les différents concepts étudiés en C++ (classes, encapsulation, héritage, polymorphisme, STL, exceptions, …) dans le mini-projet.
Analyse et modélisation UML avec StarUml
Gestion de la wiimote
Importation des modèles 3D au format .mesh
Conception en C++ des différentes classes du jeu (Eclipse)
Moteur physique BulletSDK
Installation (InnoSetup)
Mise en place d’un plateforme de travail collaborative (Mercurial, Redmine, Doxygen, …)
Réalisation d’un jeu de dames simplifié, en langage C++. Le jeu permet de jouer contre l’ordinateur (intelligence artificielle) et à distance en réseau. Cela permet d’étudier et de mettre en pratique l’algorithmie et la programmation en langage C++ avec Code::Blocks.
Algorithmie
Développement en langage C++ avec Code::Blocks
Modélisation UML (diagrammes de cas d’utilisation, classes, séquence)
Intelligence artificielle (min-max, automate à états)
Réseau (sockets)
Documentation automatique avec Doxygen
Organisation d’un tournoi entre chaque programme
Ihm du programme (en mode texte) :
Ce mini-projet est également pour les étudiants de s’initier à la modélisation UML au travers des prinicpaux diagrammes (cas d’utilisation, classes, séquence).
Ce mini-projet est également l’occasion pour les étudiants de prendre consicence de l’importance de la qualité logicielle (conventation de codage), de la documentation de son travail (commentaires, doxygen), …
Réalisation d’un jeu en 3D et en réseau. Les étudiants utilisent la librairie OpenGL pour dessiner leur personnage, puis assurent la mise en réseau du jeu en utilisant les sockets UDP multicast et le multi-threading.
Ce mini-projet est réalisé en parallèle des cours/tp de C++. Cela permet d’intégrer les différents concepts étudiés en C++ (classes, encapsulation, héritage, polymorphisme, STL, exceptions, …) dans le mini-projet.
Analyse et modélisation UML
Utilisation d’un AGL (StarUml)
Création d’un avatar graphique en OpenGL
Conception en C++ des différentes classes du jeu (Eclipse)
Tests (cpptest, sourceMonitor) et optimisations (gprof)
Installation (InnoSetup)
Mise en place d’un plateforme de travail collaborative (SVN, Trac, Subclipse, Doxygen, …)
Screenshot final :
Vidéo de démonstration du projet :
Vous pouvez télécharger le programme d’installation (23,4Mo) : setupCrysiris.exe