Jeux OpenGL
Développement Visual Basic
Version 0.0.5
Fichier source et exécutable Combat.zip (886 kb)
Exécutable et installation : Combat.exe (2941 kb)
Le programme
Ce programme se veut un projet à mis chemin entre le jeux, et un algorithme de pilotage automatisé de véhicules. Ce qui m'intéresse dabs ce projet c'est de progresser dans la connaissance de le technique OpenGL (ajout de texture utilisation de nouvelle fonction) . C'est de découvrir une nouvelle problématique, celle de la simulation de multiples éléments. Même si nous sommes là en dehors de l'intitulé du site " Usinage 5 axes " la frontière entre ce type de programme et une simulation de chariot filoguidé par exemple est à mon avis assez mince.
Les étapes de création du programme
Pour moi qui n'est aucune expérience dans ce type de programme la création de ce logiciel représente beaucoup de choses à faire de fonctions à créer.
Voici comment je pense organiser les étapes de développement.
1) Début de création du programme principal
2) Début de création d'un Editeur d'éléments
3) Mise en place d'un éditeur de carte.
Le cœur de fonctionnement du programme passe par le module :
ModuleJEux .
Ce module contrôle les actions des véhicules. Il contrôle les déplacements, le tir, la mort, et renseigne chaque véhicule des véhicule ennemi se trouvant dans leur zone respective de détection.
Les modules
ModuleJEux_Equipe2 et
ModuleJEux_Equipe2 devront contenir la partie algorithme de chaque équipe. Le but étant de faire progresser l'intelligence algorithmique de chaque équipe indépendamment de celle de l'autre de manière à faire progresser cette partie.
ETAPE 1
Dans la première étape de développement la carte sera uniquement 2D. Par la suite je passerai en 3D en faisant évoluer la partie
PATHFINDER selon la topographie du terrain.
La partie texture et autres détails graphique n'est pas traité dans cette partie. N'ayant pas les qualifications , expériences dans ce domaine, il restera pour moi un point mineur de ce programme.
Utilisation du programme
Utilisation du programme
On peut dans ce prototype sélectionner un tank en cliquant dessus avec le bouton de gauche de la souris,le déplacer à l'aide des flèches du clavier.
Quand deux tanks sont suffisamment proche alors ils combattent ensemble automatiquement.
Click droit sur un tank; le tank sélectionné se déplace en direction de la position.
Click droit sur une position le tank se déplace vers la position. Selon le chemin calculé.
Menu
Détails des fonctions du menu.
Fichier
Vue
Vue de dessus
Permet de visualiser la carte 3D en vue de dessus
Vue auxilière
Permet de visualiser la carte 3D selon la vue auxilière sauvegarder dans le jeux.
(Voir Update infos vue auxilière )
Vue base
Permet de visualiser la carte 3D selon la vue principale sauvegarder dans le jeux. (Voir Update infos vue principale )
Options
Info Vue
Affiche les informations sur les paramètres de la vue 3D actuelle.
Update infos vue
Sauvegarde les paramètres de la vue 3D actuelle dans le fichier jeux.
Update infos vue auxiliaire
Sauvegarde les paramètres de la vue 3D auxilière actuelle dans le fichier jeux.
RAZ Log
Remise à zéro de la fenêtre d'affichage des informations.
A Propos
Pour la manipulation graphique :
Double click dans la zone d'affichage : RAZ des orientaions et zoom d'affichage
Bouton de gauche de la souris : Translation
Bouton de droite de la souris : Zoom
Bouton de gauche + touche Shift : Rotation XY
Bouton de droite + touche Shift : Rotation Z
Map Editeur
Map editeur est un petit editeur de carte associé à un path finder. Le programme d'origine n'est pas de moi pour la partie Pathfinding ( Calcul de chemin ) mais de Julien Lecomte.
http://www.amanitamuscaria.org Son site web.
http://www.amanitamuscaria.org/content/view/4/0/ : Lien direct sur la page du code.
Les commentaires d'origine sont encore présent dans le source.
Pour plus d'explication sur les algos de recherche de chemin, il faudra attendre un peu. Ou voir les liens sur cette page.
Algo testé : A* (AStar) et Dijkstra.
Fichier source et exécutable MapEditor.zip (161 kb)
Signification des couleurs

Case correspondant à un chemin privilégié (Route)

Case correspondant à un chemin normal

Case correspondant à un chemin difficile

Case correspondant à un chemin très difficile

Case correspondant à un chemin impraticable
Element Editeur
Ce code est une suite ou une brique de plus à mon projet de Jeux / OpenGL.Il permet de visualiser les différents véhicule diponible dans le jeux.
C'est avant tout pour moi une base de travail pour tester la partie représentation des véhicules en OpenGL.
Les prochaines étapes pour ce code consisteront à rajouter des textures ou a modifier la représentation du tir.
Les fichiers STL utilisés pour la définition des blindés viennent de différent site WEB.
Dans le futur, je pense aussi rajouter des infos sur chaque élément; information historiques, caractéristiques.
Fichier source et exécutable EditorElement.zip (844 kb)
Liens
Article sur la mise en place de pathfinding dans un jeu RTS
Présentation du pathfinding et des divers algorithmes existants.
Article très intéressant en anglais sur la création de jeux , le pathfinding et autres.
Document intéressant au format Word sur une application Pathfinding militaire (en anglais).
Vous pouvez retrouver une ancienne version de ce code sur le site de www.vbfrance.com (code 33518)
Liens sur le site www.vbfrance.com