Le scrolling, parlons-en

Dans Lore of the Ember, la caméra suit Alaric partout, le monde scrolle autour de lui, et si ce scrolling accroche, sautille ou tremble, tout le jeu prend un air bancal, même quand tout le reste est soigné.

C'est pour ça que j'ai passé beaucoup de temps sur ce détail. Un mouvement fluide, c'est ce qui permet de se plonger pleinement dans le jeu, on ne voit plus que le personnage et le monde qui l'entoure. C'est exactement l'effet que je cherche.

Deux familles de machines

Lore of the Ember est fait pour les Atari, et Atari a sorti plusieurs modèles au fil des années. Pour ce qui nous intéresse ici, il y en a deux grandes familles : le STf et le STe, sa version un peu plus musclée.

La différence tient à deux petites choses que le STe possède et que le STf n'a pas. La première, c'est le scroll matériel : le STe sait décaler l'image affichée tout seul, en douceur, sans que le jeu ait à redessiner quoi que ce soit. La seconde, c'est le blitter, une puce dédiée qui recopie des morceaux d'image à toute vitesse, bien plus vite que le processeur ne le ferait. Sur STf, ni l'un ni l'autre : c'est le processeur, et donc mon programme, qui doit tout faire.

Je tenais à ce que Lore of the Ember tourne bien sur les deux. Pas question de réserver le jeu aux STe et de laisser tomber tous ceux qui sont restés sur un STf.

Sur STe, je m'appuie sur la machine

Sur STe, je laisse le matériel travailler pour moi. Le scroll matériel fait défiler le décor de manière fluide, la caméra colle au héros, et le monde se déroule sans le moindre accroc. Pendant ce temps, le blitter dessine les personnages et les éléments animés.

Le petit progrès dont je suis le plus content est récent : au lieu de lancer le blitter puis d'attendre qu'il ait fini, je le laisse désormais dessiner pendant que le processeur prépare déjà la suite. Les deux avancent en même temps. Ce temps grappillé, je l'utilise : plus d'ennemis à l'écran en même temps, de la marge pour le deuxième joueur, sans que le mouvement ne perde une miette de sa fluidité.

C'est le rendu que je montre en premier, parce que c'est là que Lore of the Ember est le plus proche de ce que j'ai en tête : une balade fluide dans un monde qui se corrompt, où rien ne casse l'immersion.

Le scrolling sur STe : le décor défile au pixel près.

Sur STf, je fais tout à la main

Sur STf, je n'ai aucun de ces deux filets. Pas de scroll matériel : chaque petit pas du décor, c'est une image entière que mon programme doit redessiner, décalée, à la main. Pas de blitter non plus : le processeur porte seul le poids de tout ce qui bouge à l'écran. Le piège classique, c'est de finir avec un scrolling haché, qui avance par à-coups.

Le vrai défi a été là : obtenir sur STf un scrolling régulier, agréable, qui ne donne jamais l'impression d'un jeu bridé ou d'une version au rabais. J'ai retourné le problème dans tous les sens pour que le mouvement reste constant, sans saccade, du début à la fin d'un déplacement. Aujourd'hui, ça roule, et j'en suis fier : c'est ce qui fait toute la différence la manette en main.

Le scrolling sur STf : tout est recalculé, et ça reste régulier.

La suite

Le mouvement est en place et fluide des deux côtés. La prochaine étape, c'est de le mettre entre les mains d'autres joueurs et de voir si ce scroll produit le bon effet : celui de s'immerger pleinement dans le jeu.

Pour découvrir où en est le jeu, voir la page d'accueil.