Voir un personnage contourner un rocher ou passer derrière un arbre dans un jeu vidéo ne semble probablement pas particulièrement compliqué.
Pourtant, lorsque j'ai commencé à travailler sur Luni en décembre 2024, réussir à faire cela dans un monde isométrique 2D était l'un des premiers défis que je voulais relever.
Et, d'une certaine manière, c'était aussi un test personnel.
Les fondations techniques
Avant d'aller trop loin dans la création du monde, je voulais répondre à une question simple : serais-je capable de faire fonctionner un environnement isométrique 2D comme je l'imaginais ?
Pour moi, cela signifiait résoudre trois problèmes essentiels : la navigation, le pathfinding et le depth sorting. Je me disais que si j'arrivais à faire fonctionner ces systèmes ensemble, j'aurais suffisamment confiance pour poursuivre le développement du reste du jeu. Pour le jeu que je voulais créer, je considérais cela comme l'un des principaux obstacles techniques à surmonter. J'ai d'autres défis techniques en tête pour Luni, mais ce sera pour un autre chapitre.
Trois défis, un seul monde
L'objectif était assez simple à décrire : je voulais que les personnages puissent se déplacer naturellement dans un environnement isométrique, contourner les obstacles et s'intégrer visuellement au monde qui les entoure. Mais il fallait prendre plusieurs éléments en compte.
La navigation détermine comment les personnages se déplacent dans l'environnement.
Le pathfinding leur permet de trouver un chemin vers leur destination tout en évitant les obstacles.
Le depth sorting crée une illusion de profondeur en affichant les personnages et les objets dans le bon ordre. Quand Orin passe derrière un arbre, celui-ci doit le masquer. Quand il passe devant, c'est l'inverse.
Pris individuellement, ces concepts sont relativement simples à comprendre. Les faire fonctionner ensemble de manière cohérente dans un monde isométrique 2D était une autre histoire.
J'ai passé environ les deux à trois premiers mois à expérimenter avec des prototypes en C# dans Unity, en testant différentes approches et en construisant progressivement une base qui me convenait.
Au fil du développement, j'ai petit à petit étendu ces systèmes en ajoutant différents niveaux de hauteur, des pentes, des obstacles animés et d'autres éléments qui ont apporté leurs propres défis.
Chaque ajout m'a amené à revoir et à adapter certaines parties des systèmes existants pour que l'ensemble continue de fonctionner correctement.
Presque deux ans plus tard
Depuis ces premières expérimentations, Luni a considérablement évolué. Une grande partie du temps a été consacrée au développement des mécaniques de jeu, à la création et à l'amélioration des éléments graphiques, à la recherche d'une direction artistique, à la conception des environnements et à la construction progressive de l'univers du jeu.
Les premiers prototypes ont laissé place à un jeu bien plus complet, avec une identité visuelle qui s'est construite au fil de nombreuses expérimentations.
Il reste encore du travail, mais le monde que vous voyez aujourd'hui est bien plus proche de ce que j'avais imaginé au départ.
Et ces premiers systèmes font toujours partie de ses fondations.

