begin process at 2012 05 27 13:51:10
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Jeux

 > BESOIN D'AIDE ET D'AVIS POUR JEU ROBOT POUSSE-PUCK

BESOIN D'AIDE ET D'AVIS POUR JEU ROBOT POUSSE-PUCK


 Information sur la source

Note :
6 / 10 - par 1 personne
6,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Jeux Classé sous :jeu, robot, opengl, glut, glui Niveau :Débutant Date de création :29/09/2006 Date de mise à jour :02/10/2006 10:57:42 Vu / téléchargé :6 337 / 495

Auteur : Heyho

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Le but de ce projet est de réaliser un jeu avec deux robots mobiles en agissant uniquement sur l’accélération linéaire et l’accélération angulaire. Le joueur contrôle son robot pour qu’il pousse un puck dans un des deux trous.
On peut y jouer individuellement, à deux, ou contre l'ordinateur (mode automatique).
Les moyens de contrôle sont la souris, le clavier ou le mode automatique.

Le jeu est programmé en C, exception faite de la partie graphique (Opengl, Glut et Glui) qui est en C++.
Ce projet a été réalisé dans le cadre d'un cours informatique à la fin de la première année, c'est mon premier projet.
Vous trouverez dans le dossier zip deux pdf qui expliquent les règles du jeu, les contraintes imposées ainsi que les explications sur les différentes fonctions du code.


 Conclusion

IMPORTANT
Pour faire fonctionner l’exe correctement :

1. Décompresser le dossier robot_pousse_puck.zip
2. Afficher les extensions : ouvrir le dossier robot_pousse_puck, outils, options des dossiers, onglet affichage, décocher masquer les extensions des fichiers dont le type est connu.
3. Copier glut32.dll dans le dossier C:\WINDOWS\system32

Etapes 4 et 5 pour ceux qui n’ont pas Visual C++ (librairies dépendantes)
4. Aller sur le site http://www.microsoft.com/downloads/details.aspx?Fa milyID=32bc1bee-a3f9-4c13-9c99-220b62a191ee&displa ylang=fr et télécharger vcredist_x86.exe
5. Exécuter vcredist_x86.exe

6. Ouvrir le dossier Release et CHANGER L’EXTENSION de projet.exo en projet.exe
7. Exécuter projet.exe

Pour créer l’exécutable avec Visual C++ :

1. Décompresser le dossier robot_pousse_puck.zip
2. Afficher les extensions : ouvrir le dossier robot_pousse_puck, outils, options des dossiers, onglet affichage, décocher masquer les extensions des fichiers dont le type est connu.
3. Télécharger glui32.lib et glut32.lib (Rechercher avec google)
4. Copier glui32.lib et glut32.lib dans C:\Program Files\Microsoft Platform SDK\Lib
5. Ouvrir projet.vcproj avec Visual
6. Générer l’exe EN MODE RELEASE et non en mode Debug


Si vous éprouvez des difficultés à trouver les fichiers .dll et .lib, contactez-moi et je vous enverrai tout ça par mail dans un dossier.



Remarques:

Le projet n'est pas encore achevé, il reste encore pas mal de choses à retoucher et à rajouter.

A retoucher:

- Le mode souris n'est pas encore parfaitement au point car le robot fait des tours sur lui-même avant de s'arrêter. Je pense que c'est dû au fait de l'imprécision lors de la transformation des  coordonnées souris en coordonnées Opengl.
- Le mode automatique est à retravailler car il est basé sur le mode souris. Par conséquent, tant que le mode souris ne sera pas fonctionnel à 100%, le mode automatique ne le sera pas non plus.
- Le mode clavier est difficile à contrôler car dans le cahier des charges il était précisé qu'on ne pouvait modifier que les accélérations linéaire et angulaire. C'est pour cela que j'ai introduit l'utilisation de la touche F1 qui permet d'immobiliser le robot.
Formellement parlant cette pratique est interdite car je travaille sur les vitesses et non les accélérations. Là aussi si vous avez des idées d'amélioration merci de m'en faire part.
- Le système de comptage de points est aussi à retravailler (malus, etc.)
- ...


J'attends avec impatience toutes vos suggestions d'amélioration, de corrections, règle de jeu à rajouter, etc.
Toute critique (positive ou négative), commentaires sont les bienvenus.

Un grand MERCI à tous ce qui prendront un peu de leur temps pour regarder ce projet et me donner un feedback.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   robot_pousse_puck_2
    •   Release
      • projet.exoTélécharger ce fichier [Réservé aux membres club]180 224 octets
    • constantes.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier938 octets
    • glui.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier52 825 octets
    • glut32.dllTélécharger ce fichier [Réservé aux membres club]237 568 octets
    • graphic.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier6 332 octets
    • graphic.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 508 octets
    • main.cppTélécharger ce fichier [Réservé aux membres club]Voir ce fichier19 563 octets
    • overview_robot_pousse-puck.pdfTélécharger ce fichier [Réservé aux membres club]286 452 octets
    • projet.vcprojTélécharger ce fichier [Réservé aux membres club]4 420 octets
    • rapport_informatique.pdfTélécharger ce fichier [Réservé aux membres club]89 560 octets
    • robot.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier20 425 octets
    • robot.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 874 octets

Télécharger le zip


 Historique

30 septembre 2006 13:10:32 :
J'ai rajouté un screenshot et le fichier exe se trouve dans le dossier Release. Veuillez changez l'extension .exo en .exe (sinon ne passe pas à l'upload). Rem: Un copain qui n'a pas installé Viusal n'arrive pas à faire tourner l'exe. Message d'erreur : "Cette application n'a pas pu démarrer car la configuration de l'application est incorrecte. Réinstaller l'application pourrait résoudre ce problème."
30 septembre 2006 13:23:09 :
-
02 octobre 2006 10:57:43 :
Rajout d’explications pour que tout le monde puisse lancer le .exe (même ceux qui n’ont pas Visual !) : lire « pour faire fonctionner l’exe correctement » et « pour créer l’exécutable avec Visual C++ ».

 Sources de la même categorie

Source avec Zip Source avec une capture JEU DES CARTES par eapaceinfo
PROGRAMME DE JEU DE MPT par KerizGarmm
Source avec Zip Source avec une capture JEUX SERPENT par antho974
Source avec Zip Source avec une capture PENDU EN SDL par Damsou91
Source avec Zip STATE MACHINE MODIFICATION MATH BUCKHAM par billybones79

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture BASE/MOTEUR 3D EN QT/OPENGL (COMPLET ET FONCTIONNEL!) POUR U... par envi33
Source avec Zip CUBE 3D GLUT32 VC++ ET DEVC++ par bobby03
Source avec Zip TETRIS OPENGL AVEC GLUT par neodante
Source avec Zip Source avec une capture TETRIS JEU AVEC OPENGL/GLUT par badrbadr
Source avec Zip TETRIS EN OPENGL/GLUT par Funto66

Commentaires et avis

Commentaire de Kirua le 30/09/2006 11:30:57

Screenshot ?

Commentaire de Joky le 30/09/2006 11:50:29

Et executable aussi pourquoi pas ?

Commentaire de Heyho le 02/10/2006 11:18:34

Alors toujours personne pour me venir en aide?

Commentaire de Heyho le 02/10/2006 17:49:33

MODE D’EMPLOI

ASPECT VISUEL
- Lorsque vous lancez le programme, vous verrez une forme géométrique verte : c’est le robot.
- Les cercles rouges sont les buts.
- Le cercle noir est un puck.
- Le cercle jaune représente la zone autorisée pour le puck, lorsqu’il arrive dans la zone blanche, le puck est automatiquement replacé dans la zone jaune avec une position aléatoire.
- A droite, vous trouverez une série de gadgets (des widgets) qui permettent de modifier les paramètres du jeu (une sorte de super menu très intuitif).

A présent la méthode pour jouer :
A tout moment l’utilisateur a la possibilité de changer son moyen de contrôle de robot. C’est ainsi que trois choix sont proposés.

MODE SOURIS
- Commencer par spécifier l’accélération angulaire de votre robot en appuyant sur la flèche haut située à côté de angualaire1, mettre une valeur proche de 1.8
- Mettre une valeur pour l’accélération linéaire1 proche de 0.7
- Gare aux excès de vitesse, vous êtes limités !
- Cliquez maintenant sur une partie de la zone jaune, le robot tourne sur lui-même pour se mettre au bon angle puis accélère linéairement jusqu’à l’endroit du clique et s’arrête une fois la position atteinte.
- Si lors de son déplacement le robot entre en contact avec le puck, alors ce dernier est poussé.
- Le but du jeu est donc de pousser le puck dans un des buts (cercles rouges) pour marquer des points

MODE CLAVIER
- A tout moment le/la joueur/euse a la possibilité de changer son moyen de contrôle, il/elle peut ainsi passer en mode clavier en appuyant sur le radiobutton correspondant.
- Les accélérations sont ainsi contrôlées avec les touches fléchées du clavier.
Flèche haut pour accélérer, bas pour décélérer, droite pour tourner à droite, gauche pour tourner à gauche.
- L’attractivité du jeu est qu’on a le droit de modifier uniquement les accélérations (plus réaliste du point de vue de la physique-cinématique), ce qui implique qu’on ne vas pas tout de suite reculer en pressant touche fléchée bas du clavier mais bien décélérer jusqu’à atteindre une vitesse nulle puis une vitesse négative qui correspond au recul.
- Si on perd le contrôle du robot, on peut appuyer sur la touche F1 pour l’immobiliser.

MODE AUTOMATIQUE
- Il n’est pas encore au point, comme décrit plus il faut attendre que le mode souris soit fonctionnel à 100%
- Le mode automatique est valable en mode un joueur (vous regardez l’ordinateur jouer) mais aussi en mode deux joueurs.
- La stratégie utilisée est vectorielle : on se positionne derrière le puck puis on le pousse dans le but  (c’est le but recherché mais pas encore au point !)
- Là encore TOUTES VOS IDEES SONT LES BIENVENUES POUR AMELIORER LE MODE AUTOMATIQUE.

MODE DEUX JOUEURS
- Cliquer sur le radionbutton deux robots et l’affichage s’en trouvera modifié.
- Tout en haut à droite, le temps écoulé s’affiche en min et en sec. En mode 2 joueurs, ceci est très utile pour savoir lequel des 2 robots a le contrôle.
- Le principe reste le même en mode deux joueurs sauf que le robot vert joue pendant les minutes paires (00min00sec à 00min59sec puis de 2min00 à 2min59sec etc.) tandis que le robot2 joue pendant les minutes impaires.

BOUTON SAUVEGARDER
- Le bouton sauvegarder crée un fichier dans lequel l’état du jeu est sauvegardé. Selon qu’on était en mode 1 robot ou 2 robots, un fichier différent est créé.

BOUTON CHARGER
- Le bouton charger remet le programme par rapport à la dernière sauvegarde. Le fichier à un robot est lu si le radiobutton est sur un robot, sinon c’est le fichier avec les deux robots qui est lu.

BOUTON PLAY/PAUSE
- En ce qui concerne le bouton Play/Pause, il permet d’arrêter le jeu ainsi que la minuterie. La méthode utilisée ici est d’arrêter la mise à jour du ou des robots (dans le idle _cb).

BOUTTON QUITTER
- Enfin, le bouton quitter permet de quitter le programme en toute sécurité.

Notons que tous les spinners se mettent à jour en fonction des valeurs instantanées, ainsi vous savez à tout moment les accélérations, vitesses et angles de vos robots.


N'HESITEZ PAS A CRITIQUER, IL N'Y A QUE DE CETTE FACON QUE L'ON PEUT AVANCER! :)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Pour 2d opengl/glut > ddraw ? [ par gimli123 ] Bonjour à tous, j'ai tester les 2, à savoir direct draw et opengl/glut, mais j'aimerai savoir si il y en as un qui est plus performant que l'autre et OpenGL/GLUT/GLUI [ par abdoulzak ] Salut à tous, Je développe une interface graphique opengl dans le cadre d'un projet de simulation. Je veux dessiner différents points [Opengl][Glut][Dev- C++ 4.9.9.2] Comment fermer un programme correctement ? [ par whikie ] Bonjour a tous,La question est celle ci : comment je peux faire pour fermer mon programme correctement si je veux faire un programme completement port menu et opengl [ par turie ] J'ai commencé de faire un petit jeu en opengl en c++ via glut qui tourne. Maintenant j'aimerai y integrer un menu dans la meme fenetre, mais je Problème avec Devc++ et OpenGL et Glut [ par nisaloncaje ] Bonjour, j'ai des petits problèmes avec la librairie glut.h et j'utilise dev c++.en effet, en faisant quelques recherches sur le forum, j'ai trou Opengl glut debutant menu graphique [ par gravel ] Bonjour, j'aimerais savoir comment on fais en opengl/glut pour faire afichier un image fixe. Je veux dire que si j'ai un screen en 800x600 et que j'm' Souris & OpenGL (Glut) [ par norton ] hello, j'aimerai afficher un bitmap à la position de la souris (au clique)pour ce qui est de l'axe X pas de prob mais en Y y a un ptit souci Problème avec mon compilateur et OpenGL [ par deguelatore ] Bonjour a tous est voila mon problème:         Je programme sous DEV C++. Au début de mon progr Ecrire du text en OpenGL (sans glut) [ par Taranael ] Hello ! Bon je dois réaliser pour l'IUT un Serveur qui affiche la reconstitution d'un puzzle (gérée par un autre programme) et il faut SDL/Glut Direct3D/OpenGL ... [ par mondrone ] Je pense que certaines personnes ont deja du poser cette question, et si c'est le cas merci de m'indiquer le post en question car je ne l'ai pas trouv


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,153 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales