bille2 :
Dans la man page tu as :
Not all display hardware is able to change gamma.
De plus certaine verson de X11 ne supporte pas la fonction et une version de SDL sur Windows a un bug qui fait qu'elle
ne fonctionne pas.
C'est peut être pour cela que "rien ne se passe" dans ton cas.
Fait le test de retour de la fonction, car :
Returns -1 on error (or if gamma adjustment is not supported)
A oui j'avais pas vu ça comme ça je pensais que c'était pour ceux qui avait de vielle carte graphique:
Je vais tester sinon j'ai commencé a coder une fonction mais c'est pas au point.
j'ai donc fait une fonction qui creer une surface temporaire
SDL_Surface *Brightness(SDL_Surface *org,int lum){
tmp_surface=SDL_CreateRGBSurface(SDL_HWSURFACE, org->w, org->h, 32, 0, 0, 0, 0);
int x;
int y;
int color;
for (x=0;x<=org->w;x++) {
for (y=0;y<=org->h;y++) {
color=getpixel(org,x,y);
putpixel(tmp_surface,x,y,color-SDL_MapRGB(screen->format,lum,lum,lum));
}
}
return tmp_surface;
}
et pour l'utilisé je fais un
SDL_BlitSurface(lumi(ground,128), &coord_ground, screen,NULL );
mais bon comme je dis c'est pas au point et c'est lourd mais si quelqu'un a une meilleur piste
Merci en tout cas bille2