Repository navigation
gbe v0.1.8
Cette version rend la rémanence stable et fidèle à l'écran LCD de la console, sur le modèle de l'émulateur SameBoy. Elle n'est plus expérimentale.
Nouveautés
Une rémanence stable et fidèle
L'écran LCD de la Game Boy était lent à réagir : chaque image restait visible pendant la suivante. Certains jeux s'en servaient pour rendre des sprites transparents en les faisant clignoter d'une image à l'autre. L'entrée « Rémanence » de la page Affichage imite cet effet.
- Plus de scintillement : jusqu'ici, un sprite qui clignotait redevenait plein par moments, et ne paraissait plus transparent du tout en avance rapide x4. Chaque image est maintenant mélangée avec celle qui la précède vraiment : le sprite reste transparent et stable, à vitesse normale comme en avance rapide.
- Deux modes : l'entrée « Rémanence » passe de oui/non à « non », « simple » et « fidèle ».
- simple : l'image et la précédente à parts égales ;
- fidèle : les poids alternent d'une ligne à l'autre (un tiers, deux tiers), et l'ordre s'inverse à chaque image, comme sur l'écran LCD. C'est le mode « Accurate » de SameBoy.
- Couleurs justes : le mélange se fait en lumière linéaire, comme dans SameBoy. Les sprites transparents ne paraissent plus trop sombres.
- Avec tous les filtres : le mélange se fait après le filtre d'affichage, si bien que Scale2x, Scale3x et MMPX travaillent sur des images nettes.
- Sans fantôme parasite : après un rembobinage, le chargement d'un save state ou une réinitialisation, l'image n'est jamais mélangée avec une image d'avant.
Comme sur l'écran d'origine, les éléments en mouvement laissent un léger halo.
Affichage plus rapide
La conversion de l'image d'un jeu Game Boy Color, faite à chaque image, est environ 15 % plus rapide : de 10,4 à 8,8 µs sur les machines de test de GitHub, et de 9,0 à 7,2 µs sur un Mac M1 Max. Le rendu est identique, pixel pour pixel.
Site du projet
La page https://ldechoux.github.io/gbe/ présente les deux modes de rémanence.
Mise à jour
Remplace simplement le binaire. Tes réglages, les sauvegardes (.sav) et les save states (.state) des versions précédentes sont conservés. Si tu avais activé la rémanence, elle passe en mode « simple ».
Le format des save states ne change pas : ceux créés avec la v0.1.8 se chargent aussi dans la v0.1.7.
Changements complets : v0.1.7...v0.1.8