Hola he encontrado este ejemplo de codigo para poder girar una imagen en el eje de la Y 180 grados...el problema es q es para imagenes de 8 bits con paleta pero yo lo querria para imagenes bmp con 24 bits como se podria modificar el codigo..es q me falla la llamada setColors(......) y no hay manera de q funcione con un bmp de 24 bits :(
static SDL_Surface *hflip(SDL_Surface *s)
{
int i;
SDL_Surface *z = SDL_CreateRGBSurface(SDL_SWSURFACE, s->w, s->h, 8,
0, 0, 0, 0);
/* copy palette */
SDL_SetColors(z, s->format->palette->colors,
0, s->format->palette->ncolors);
if(SDL_LockSurface(s) < 0 || SDL_LockSurface(z) < 0)
sdlerr("locking flip images");
for(i = 0; i < s->h; i++) {
int j;
Uint8 *from = (Uint8 *)s->pixels + i * s->pitch;
Uint8 *to = (Uint8 *)z->pixels + i * z->pitch + s->w - 1;
for(j = 0; j < s->w; j++)
to[-j] = from[j];
}
SDL_UnlockSurface(z);
SDL_UnlockSurface(s);
return z;
}
haber si alguien me puede ayudar :(
bueno respondiendote una duda pasada
http://www.libsdl.org/release/SDL-devel-1.2.7-VC6.zipese es el archivo de SDL en Visual C
adentro hay un VisualC.html
cuyo titulo es
Using SDL with Microsoft Visual C++ 5,6 and 7
y sobre el tema que quieres ahora te remito a lo mismo que ya habiamos hablado hace algun tiempo
http://www.stratos-ad.com/forums/index.php...f=15&t=3497&hl=esa es la forma de como se hace, independientemente que sea pixel por pixel por que da lo mismo si lo haces 1 sola vez