Bonjour,
j'ai une surface (img) qui n'a pas été crée avec de la transparence.
elle à été crée ainsi :
j'ai dessiné quelques trucs dessus (SDL_BlitSurface(...))
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 base = SDL_CreateRGBSurface(SDL_HWSURFACE, width , newheight, 32, 0, 0, 0, 0); SDL_SetColorKey( base, SDL_RLEACCEL | SDL_SRCCOLORKEY, SDL_MapRGB( base->format, 255, 0, 255) ); img = SDL_DisplayFormat( base );
et maintenant je voudrai savoir si je peux dessiner un rectangle ayant de la transparence dedans ? (au final l'image n'aura pas de transparence)
j'ai essayé ceci :
ca ne marche pas... pas de transparence...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SDL_Rect r = {100,50,500,400}; SDL_FillRect(img, &r, SDL_MapRGBA(img->format,198,147,10,128));
J'avoue que je n'ai pas l'habitude d'utiliser ce canal alpha, et comme au final mon image "img" n'a pas besoin de canal alpha je ne pense pas qu'il soit necessaire de modifier la manieredont je l'ai crée. ("img" ne va pas être appliqué avec un canal alpha, c'est juste pour construire celle-ci) .. je pense...
quelle est la bonne methode ?
voilà, merci de votre aide.
Partager