1

-

2

Avec m lib c'est pas compliqué. Tu affiche ta première image dans le plan visible.
Ensuite tu chnage le plan d'affichag, tu affiche dans ce plan et ensuite tu chnage le plan visible.
Un petit exemple:

on dira que img1 et img2 sont tes variables contenant tes images.
attention ici tes deux images doivent être issue de la même palette.

IniTime();
SetVideoMode(MODE4+BG2); //initialisation du mode et du bg
SetPalette(pal); //initialisation de la palette
PutFullPic(img1); //affichage de l'image dans le plan visible
SetVidBuFf(HID_PLANE); //changement de plan d'affichage (plan invisible)
PutFullPic(img2); //afficahge dans le plan invisible
Wait(SEC,2);
ChgVidBuff(); //changemnet du plan visible donc apparition de img2.

Pour ce qui de la lenteur essaye avec visual boy advance c'est moins lent, mais c'est vrai que ce l'est quand même un peu.
C'est normal le processeur n'est que de 16 Mhz. Regarde sur ti89/92+ comme c'est encore plus lent. Le processeur ne fait que 6mhz de moins pourtant.

Par contre j'ai pas trop compris ce que tu voulais dire avec tes plans. Essaye d'expliquer ça un peu mieux.


Vive le coding gba.
www.codegba.fr.st

3

-

4

-

5

Pour tes plans transparents ou qu'on voit à travers (c'est pas trop français ça), il faut utiliser les tiles et les maps (modes 0,1,2).
Si tu fait en mode bitmap:
-tu vas devoir refaire tois même les fonctions de scrolling et d'enregistrement de l'arrière plan...
-ça va aller beaucoup trop lentement.
-bref tu vas te faire chier.

Par contre si tu utilise les modes tiles:
-Tu à plusieurs priorité qui te permettent de éfinir la hauteur d'affichage. (le bg de plus petite prio sera affiché le plus au dessus.)
-Et pour pouvoir voir les autres bg à travers ce premier bg il faut que certaines parities de ce bg soit rempli avec la première couleur de la palette (0) dite couleur de transparence.
Ainsi à travers ces zones tu verras le bg de priorité plus grande.

Tu appliquer ce procédé à quatre bg différent. (c'est à dire qu'à travers le premier tu peux voir le deuxième, à travers les deux premiers le troisième,...).


Ensuite pour mettre les arrières plans en mouvement tu as BGPos() ou ScrollBG().



Vive le coding gba.
www.codegba.fr.st

6

-

7

Pour afficher un seul pixel il faut que tu fasse un tile de 8x8 qui contient le pixel ou tu veux qu'il s'affiche.
En clair c'est trés lourd.
Les modes bitmap et tiles sont trés différents et il n'est pas vraiment facile d'uiliser les fonctionnallité de l'un dans l'autre.
Vive le coding gba.
www.codegba.fr.st