Posts Tagged ‘c++’

Minecraft 3D heightmap images in C++

Commentaires fermés sur Minecraft 3D heightmap images in C++

Un musée virtuel contenant des créations 3D dans un environnement Minecraft (serveur Minetest et le plugin mod_pycraft). Ces œuvres ont été réalisées à l’aide de programmes C++ chargés de convertir de simples images en volumes 3D avec la technique des « heightmaps ».

Un aperçu en vidéo :


Challenges robotiques C++

Commentaires fermés sur Challenges robotiques C++

Comme tous les ans, les étudiants de SNIR1 terminent le module de cours C++ par des challenges robotiques. Chaque équipe dispose d’un robot, d’un environnement de développement croisé sous Linux Ubuntu et bien entendu de ses connaissances et compétences en programmtion C++.
Voici un aperçu en vidéo de ces challenges :


Projet EMBAR’QUAI

Commentaires fermés sur Projet EMBAR’QUAI

Ce projet consiste à récupérer les données des bateaux  participant à une régate pour les afficher en temps réel sur un écran de télévision.

  • lecture des données du bateaux via NMEA2000 (position, vitesse, vent…)
  • envoi via GSM
  • affichage web dynamique

resume_embarquai


Challenges robotique LEGO EV3 C++

Commentaires fermés sur Challenges robotique LEGO EV3 C++

Ce mini-projet a pour objectif d’aborder les principes de la robotique, de mettre en œuvre des capteurs et des actionneurs, d’appréhender un environnement de développement croisé et de programmer le robot en langage C++ pour lui faire réaliser une tâche complexe.

Chaque équipe composée de 2 ou 3 étudiants prépare son robot pour les 3 challenges proposés :

  • course autour d’un anneau
  • ramassage d’objets
  • combat de sumos

A la fin toutes les équipes s’affrontent lors d’un championnat. Cette année c’est l’équipe « Terminator » composée de Florian et Johan qui remporte la compétition.


Lutte contre les frelons asiatiques

Commentaires fermés sur Lutte contre les frelons asiatiques

Système de recensement et de lutte contre les nids de frelons asiatiques :

  • application android pour recenser les nids (position + photo)
  • serveur web de consultation de la carte des nids avec PHP et MySQL
  • ar drone embarquant un GPS
  • commandes AT pour le pilotage du drone
  • manette type PS2 + librairie USB


Système d’aide pour pilotes non voyants

No Comments »

Il s’agit d’un système d’aide au pilotage de planeur pour des personnes non voyantes. Il offrira un guidage sonore à l’élève pilote aveugle. L’information sonore est émise en fonction de la position du planeur par rapport à une trajectoire à suivre, ainsi qu’en fonction des mouvements du planeur.

3 versions :

  • une version pour les smartphone android
  • une version sur PDA avec .NET
  • une version pour PC portables avec un GPS et une Wiimote


Jeu de tir ZOMBIRIS

No Comments »

Réalisation d’un jeu de tir subjectif de type FPS en C++ à l’aide des librairies Irrlicht et RakNet notamment.

Vidéo de démonstration :

Téléchargements (6,16 Mo) : setup_zombiris.exe


Jeu de pétanque 3D avec la Wiimote

No Comments »

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, …)

Screenshot d’une partie sur une île déserte :

Screenshot d'une partie de pétanque sur un île déserte

Autre screenshot d’une seconde partie en forêt :

Screenshot d'une partie de pétanque en forêt

Vous pouvez télécharger le programme d’installation (26,6Mo) : setupWiiPetanque3d.exe


Jeu de simulation automobile Trackiris

No Comments »

Réalisation d’un jeu en 3D et en réseau. Les étudiants utilisent la librairie OpenGL pour dessiner le terrain, les routes, les voitures et assurent la mise en réseau du jeu en utilisant les sockets UDP multicast et le multi-threading. Un moteur physique simule le comportement de la voiture (sous-virage, sur-virage, glissement, inertie, …)

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 du résultat final :

Screenshot du jeu de simulation automobile Trackiris

Vous pouvez télécharger le programme d’installation (17,1Mo) : setupTrackiris.exe


Jeu de dames en C++

No Comments »

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) :

Ihm du jeu de dames

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).

Diagramme UML de 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), …

Métriques du code source du projet