Logo

¡Bienvenido a Stratos!

Acceder

Foros



Cambiar Funcion Sdl :( Para Imagenes Bmp De 24 Bit

Iniciado por Lucas333, 13 de Septiembre de 2004, 11:54:27 PM

« anterior - próximo »

Lucas333

 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 :(

vicho

 bueno respondiendote una duda pasada
http://www.libsdl.org/release/SDL-devel-1.2.7-VC6.zip

ese 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






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.
Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.