Dans les coulisses : construire Geo Challenge avec des technologies géospatiales Open Source
Frédéric Junod
Lorsque vous jouez à Geo Challenge, vous découvrez une expérience 3D fluide et immersive qui vous transporte sans effort au-dessus d’un petit village suisse, d’une côte française spectaculaire ou d’une ville allemande. Ce qui paraît simple à l’écran a pourtant nécessité des choix techniques réfléchis et un engagement fort en faveur des outils géospatiaux Open Source. Cet article lève le voile sur la manière dont Geo Challenge a été conçu et développé, ainsi que sur les décisions techniques qui ont guidé sa création.
Jouer Geo Challenge maintenant.
D’un point de vue technique, qu’est-ce qui semblait simple mais s’est révélé complexe à réaliser ? Étonnamment, ce n’était pas le rendu des données. C’est notre cœur de métier. Les mécanismes du jeu ont été la partie la plus difficile pour moi. Comme il s’agissait de mon premier projet de développement de jeu, créer la boucle principale du jeu, concevoir la logique de calcul du score et construire les systèmes de retour utilisateur représentaient des défis entièrement nouveaux. La courbe d’apprentissage a été exigeante, mais très enrichissante.
Notre architecture a été conçue en tenant compte de plusieurs contraintes importantes. La principale concerne l’équilibre entre la qualité du terrain et la vitesse de chargement perçue. Nous voulions utiliser les données Swisstopo d’une qualité exceptionnelle pour la carte suisse, et Google Maps pour la France et l’Allemagne, tout en optimisant la diffusion afin de garantir une expérience fluide. Cette optimisation concerne également la compatibilité avec les appareils : le jeu doit fonctionner parfaitement sur tous les dispositifs, afin que personne ne soit exclu en raison d’un chargement trop lent ou d’un appareil moins performant. La précision et l’échelle sont des fondations non négociables de l’ensemble du projet.
Pour atteindre ces objectifs, nous avons fait deux choix technologiques clés. Tout d’abord, nous avons choisi Cesium comme moteur de globe 3D. Je souhaitais expérimenter de nouvelles façons pour un public non technique d’interagir avec un globe 3D. Cesium nous offre les performances et les capacités nécessaires pour afficher la topographie suisse complexe. Ensuite, nous avons utilisé Google Firebase pour le système de score et le classement. Ce choix fait partie d’une expérimentation visant à vérifier si une petite application peut être développée sans avoir à gérer moi-même toute l’infrastructure serveur. Cette approche native dans le cloud nous a permis de nous concentrer pleinement sur l’expérience de jeu côté interface.
L’utilisation d’outils Open Source a eu une influence majeure sur la réalisation du projet. Des plateformes Open Source comme CesiumJS permettent une collaboration directe avec la communauté de développeurs. Si nous rencontrions un bug ou avions une idée de nouvelle fonctionnalité, nous pouvions échanger directement avec les créateurs. Le forum de la communauté est une ressource précieuse qui accélère la résolution des problèmes et nous permet de construire sur une base transparente et en constante amélioration. Cela apporte des bénéfices concrets qui évitent la bureaucratie des systèmes propriétaires.
En tant que développeur, j’ancre toujours mes projets personnels dans une crédibilité professionnelle réelle. Si Geo Challenge avait été un projet client plutôt qu’un jeu, qu’aurais-je fait de la même manière et qu’aurais-je changé ?
J’aurais sans hésitation conservé l’engagement envers des technologies géospatiales Open Source de haute qualité comme Cesium. La chaîne de traitement des données serait également restée la même. En revanche, pour un projet client, j’aurais impliqué davantage de développeurs et consacré beaucoup plus de temps aux tests rigoureux. Surtout, j’aurais développé moi-même le système de score. Bien que Firebase ait été très utile pour le prototypage rapide d’un projet personnel, une solution destinée à un client exige de garantir un contrôle complet et des sauvegardes fiables des données essentielles du jeu, ce qui implique de maîtriser l’infrastructure côté serveur.
Au final, Geo Challenge démontre qu’une expérience ludique peut reposer sur des choix techniques réfléchis et innovants, tout en s’appuyant sur la force de la communauté Open Source.
Carrière
Vous souhaitez travailler dans un environnement inspirant et rejoindre nos équipes motivées et multiculturelles ?