Le problème

Au départ, mon jeu tenait sur un seul écran. Le personnage pouvait courir, mais il se cognait très vite aux bords le bougre, et il n'y avait nulle part où aller. Je voulais un vrai niveau, large, avec du sol, des murs, des plateformes suspendues, quelque chose qu'on a envie de parcourir.

Le souci, c'est qu'un grand niveau dessiné comme une seule immense image coûterait bien plus que toute la mémoire de la machine. Impossible. Il fallait construire le décor autrement.

La solution : un décor en briques réutilisables

L'astuce ce sont les tuiles. Plutôt que de stocker une image géante, je découpe le décor en petits blocs réutilisables : un bout de sol, un morceau de mur, une plateforme. Le niveau devient alors une grille qui dit simplement "ici du sol, là un mur, ici du vide". C'est léger, et ça permet de composer des décors bien plus grands que l'écran sans saturer la mémoire.

Pour ce premier jet, je me suis contenté de quelques tuiles témoins : du vide traversable, du sol sur lequel on marche, un mur qui bloque, une plateforme. De quoi tester la sensation avant de soigner le graphisme.

Le monde défile avec le joueur

Le vrai changement, c'est que le personnage ne vit plus dans un écran, mais dans un monde. Il occupe une position dans cet espace large, et c'est la caméra qui s'occupe de montrer la bonne portion au bon moment.

J'ai calé le défilement sur le joueur : tant qu'il reste au centre, on suit, et quand il approche d'un bord, le décor glisse pour le garder en vue. Avec une limite aux extrémités du niveau, pour ne pas révéler le vide au-delà. Ce défilement est encore entièrement redessiné à chaque image, ce qui n'est pas la méthode la plus économe, mais à ce stade je voulais d'abord valider le ressenti avant d'optimiser.

Le résultat

Le personnage se promène enfin dans un niveau plus grand que l'écran, avec un sol en bas, des plateformes en l'air et un mur. Le décor défile quand on approche des bords. C'est le moment où le projet a cessé d'être une démo statique pour ressembler à un début de jeu.

Télécharger morteveille-002-tilemap.prg (2.1 Ko) - Archive historique de cette étape. Flèches pour bouger, haut pour sauter, fire pour quitter. Pour la version actuelle du jeu, voir la page d'accueil.

Prochaine étape

Les collisions avec le décor. Pour l'instant le joueur traverse les murs et les plateformes comme un fantôme. Il faut qu'il sente le sol sous ses pieds et qu'il bute sur les obstacles.

Viendra ensuite le défilement hardware du STe, pour faire glisser le décor sans avoir à tout redessiner à chaque image. Mais ça, c'est une autre histoire.