Ca y est, tout ce qui était prévu a été terminé. Du côté de la partie ouverture, nous avons maintenant une ouverture beaucoup plus rapide qu'avant (grâce à une grosse optimisation), depuis une fichier en local ou bien une image hébergée sur un serveur (ainsi nous pouvons retrouver notre base d'images partout). Du côté de l'interface utilisateur, le calcul de la luminosité a été grandement amélioré, nous pouvons choisir de multiplies emplacements pour les bombes ( de façon aléatoire ou pas), il y a eu une optimisation du rendu, et dernière fonctionnalité, on peut suivre le déroulement de la recherche de chemin en temps réel (affichage d'une couleur selon le coût d'un noeud). A noter l'utilisation désormais de shaders.Et enfin pour la recherche de chemin, elle est optimisée presque à fond, gère parfaitement plusieurs bombes à la fois et calcule avec succès le parcours le plus rapide ! Nous comptons maintenant faire quelques finitions, puis nous atteler à la rédaction de nos dossiers, et à la communication, qui semble être notre point faible.
L'affichage 3D était entièrement opérationnel, ainsi que le Pathfinder et l'ouverture de l'image, notre projet a atteint sa troisième étape. Nous nous concentrons maintenant sur la sélection de multiples points de bombes et d'optimisation du rendu pour l'affichage, de l'implémentation de l'algorithme permettant de parcourir plusieurs bombes pour la recherche de chemin, et de la récupération d'image depuis une base de donnée en ligne pour l'ouverture d'image.
Le Pathfinder a été optimisé ! Alors qu'il était lent et commençait à presque se stopper à partir de 20 000 nœuds traités, c'est maintenant à 20 000 noeuds par seconde qu'il traite le problème. Les premiers signes de ralentissement se font ressentir seulement vers les 350 000 nœuds, ce qui nous permet maintenant de traiter des images plus grandes, ou encore de faire plusieurs traitements rapidement (pour évaluer le trajet dans le cas où il y a plusieurs bombes par exemple). En outre le bug récurrent de l'ouvreur d'image qui était présent sous Windows a été reglé. Le developpement de l'affichage 3D et de ses fonctionnalités avance toujours à grands pas. Nous allons essayer de compiler sous Windows, et d'uploader notre deuxième version stable.
Nous avons enfin notre seconde version entièrement fonctionelle ! Celle-ci gère maintenant les images en niveau de gris, l'affichage en 2D et le pathfinding. Il semblerait cependant qu'elle ne soit parfaitement fonctionelle que sous Linux. Nous cherchons maintenant à optimiser l'ouverture de l'image, le pathfinding, et à implémenter un affichage 3D.
Le projet continue à avancer rapidement. L'affichage OpenGL (grâce à GLFW) est maintenant utilisable, bien que non fini. De ce fait nous avons pu continuer à debugguer efficacement. Nous avons réussi à extraire des Heightmaps à partir de Google Earth et de leur base de données d'élévation, ainsi qu'à ouvrir ces Heightmaps et à calculer correctement les pentes. Le bug restant réside dans le placement et l'affichage directionnel des murs virtuels. Une fois que ce bug sera reglé nous pourrons nous concentrer sur l'interface utilisateur (3D, placement de bombe par l'utilisateur), l'algorithme du voyageur (pour la combinaison de chemin la plus rapide si il y a plusieurs bombes), et diverses optimisations.
Le projet avance toujours significativement. Le projet avec des images en noir et blanc marche parfaitement. Le développement de l'affichage (OpenGL) est toujours en cours.
Nous sommes passés au développement d'un programme s'adaptant à des images en niveaux de gris, selon la profondeur (HeightMaps). Le programme a été modifié pour traiter non plus les pixels eux-mêmes , mais les arêtes de ces derniers, calculées en fonction de la différence d'élévation entre deux pixels. Le programme d'extraction d'image fonctionne correctement mais le programme de Pathfinding ne fonctionne pas encore correctement. Nous attendons que l'affichage OpenGL progresse pour pouvoir debugguer correctement.
En attendant, nous travaillons à extraire des HeightMaps de lieux réels à partir de Google Earth pour plus de réalisme
Nous voilà assez avancés dans le developpement du projet, nous venons d'ouvrir une forge et maintenant nous tiendrons ce blog sur l'avancement du projet.