1

Dans cette exemple on va utiliser la transparence.
Rappelons que nous sommes toujours en mode 8 bits, donc on utilise toujours la palette de 256 couleurs de la GP32.
Et pour la transparence, la couleur par defaut de la GP32 c'est l'index 239 qui est un rose clair.

Un sprite est comme un fond, il peut etre transparent ou pas. Il n'y a aucune difference entre un background ou un sprite, sauf seulement la maniere de l'afficher smile.



#include "gpdef.h"
#include "gpstdlib.h"
#include "gpgraphic.h"
#include "gpmain.h"
#include "gpfont.h"
#include "gpmm.h"

#include "background.h" //image background.bmp converti avec Gp32Converter
#include "sprite.h" //image sprite.bmp converti avec Gp32Converter

GPDRAWSURFACE gpDraw[2];

int nflip = 1;

void GpMain(void *arg)
{
	unsigned int i;
	
	for(i = 0 ; i < 2 ; ++i) GpLcdSurfaceGet(&gpDraw[i], i);
	GpSurfaceSet(&gpDraw[0]);
	
	for(;;)
	{

	    /** Affichage de l'image a la position 0,0
	        de taille 320,240 **/
	        
		GpBitBlt(NULL,&gpDraw[nflip], 0, 0, 320, 240, (unsigned char*)background, 0, 0 ,  320, 240) ; 

	    /** Affichage du sprite a la position 64,64
	        de taille 192,112 avec l'index 239 pour la transparence**/

		GpTransBlt(NULL,&gpDraw[nflip], 64, 64, 192, 112, (unsigned char*)sprite, 0,0,192,112,239);
		
		GpSurfaceFlip(&gpDraw[nflip++]);
		nflip &= 0x01;
		
	}
}


Voici les fichiers sources avec le fichier compilé pret a etre testé :

-- en zip
-- en rar


avatar
pourquoi la mort ? parce qu'elle nous est si douce, au contraire de la vie :)

2

le nec plus ultra pour commencer smile

3

-

4

Je rappel que c'est pour les debutants, et non des pro.

ah moin que tu ai des problemes de vu, on est en 8 bits.

On est ici pour faire apprendre les base, alors pas la peine de nous sortir ta science.

Evite a l'avenir , on se passe bien volontier de tes commentaires.

avatar
pourquoi la mort ? parce qu'elle nous est si douce, au contraire de la vie :)