Bonjour
J'aimerai pouvoir afficher une image exactement comme elle est sans l'afficher , juste en affichant l'affichant pixel par pixel (pour des test). Mais quand j'essaye, le résultat est pour le moins médiocre:
Donc j'aimerai savoir si le problème vient de mon code ou pas et s'il existe une meilleure fonction que celle que j'utilise pour arriver à mes fins.
Voilà mon code:
Uint32 getpixel(SDL_Surface *surface, int x, int y);
void setPixel(SDL_Surface *surface, int x, int y, Uint32 pixel);
je vois que tu initialise ton screen a 16 bpp.
Et ton image BMP, combien fait elle de bpp ?
Essaie de mettre pareil pour les deux (déja pour essayer !)
Edit : en effet, les fonctions getpixel et setpixel te renverront un ulong codé différemment selon la prodondeur de pixels de l'image. je te conseille donc vivement de travailler dans les memes profondeur pour chaque image
Par exemple, vérifie ce que te renvoie IMG_Load au niveau des bpp (je vote pour un 24 ou un 32), et met pareil pour screen
Oups, j'ai confondu bits et bytes ^^. Mais bon, le problème ne venait pas de là.
[SDL] Couleur exacte d'un pixel
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Recueil de code C et C++ http://fvirtman.free.fr/recueil/index.html