Jeux rétro - Il améliore par 8 les graphismes d'un vieux jeu Disney de 1992

par Korben -

Vous vous souvenez de ces jeux des années 90 qui nous faisaient rêver avec leurs graphismes de ouf qui vous semblaient si réalistes pour l’époque et qui, aujourd’hui, paraissent hyper pourris ? Et bien si je vous disais qu’il est possible d’améliorer considérablement leur rendu sans attendre une hypothétique remasterisation officielle ?

C’est exactement ce qu’a réalisé Alberto Marnetto un développeur particulièrement talentueux avec Stunt Island, ce simulateur de vol sorti par Disney en 1992. Grâce à une analyse minutieuse du code assembleur, il est parvenu à dépasser les limitations techniques de l’époque pour offrir au jeu une expérience visuelle nettement supérieure.

La première étape de cette transformation a consisté à comprendre le fonctionnement interne du jeu. Pour ce faire, notre développeur a utilisé Ghidra, un outil d’analyse de code, afin de disséquer l’exécutable. L’objectif ? Localiser la variable contrôlant le niveau de détail des graphismes. Une aiguille dans une botte de foin numérique en somme !

La percée est venue de l’analyse du fichier GAME.VAR, qui stocke les préférences du jeu. En modifiant le niveau de détail dans les options et en observant les changements dans ce fichier, notre expert a ainsi pu identifier les octets cruciaux.

Mais le plus intéressant reste à venir… Comment le moteur de jeu utilisait-il cette valeur ?

Et bien grâce à un débogueur DOS et beaucoup de patience, il a découvert que ce niveau de détail servait aussi à calculer la distance à partir de laquelle les objets passaient d’un modèle détaillé à une version simplifiée.

La modification finale est remarquablement élégante : six octets de code assembleur suffisent à multiplier par huit le seuil de distance. Résultat, des modèles 3D beaucoup plus détaillés, même pour les objets éloignés.

Cette modification permet ainsi d’obtenir l’équivalent d’un niveau de détail de 800%, bien au-delà des 100% maximum proposés par le jeu d’origine mais, attention, ce n’est pas aussi simple qu’il y paraît. L’augmentation du niveau de détail a un coût en termes de performances et même avec DOSBox poussé à fond, le jeu devient rapidement difficile à contrôler si on pousse trop loin le curseur.

Alberto a donc dû trouver un compromis entre qualité visuelle et jouabilité et sa version finale du patch offre une amélioration spectaculaire tout en maintenant une expérience de jeu fluide. D’ailleurs, il explique tous les détails ici pour ceux qui veulent en savoir plus.

Et ce patch qu’il propose ne se limite pas à l’aspect esthétique puisque dans Stunt Island, une meilleure visibilité des détails permet de repérer plus facilement les objectifs de mission, de mieux appréhender les distances lors des atterrissages et bien sûr de profiter pleinement des décors plus détaillés

Cette initiative s’inscrit dans une démarche de préservation du patrimoine vidéoludique, qui est quelque chose dont on parle beaucoup en ce moment car au delà de la simple conservation, ça permet aussi de donner une seconde jeunesse à nos jeux préférés d’antan.

Source : Hackaday