¡Hola amigos!
Aquí os adjunto unas rutinas para generar y pintar sprites RLE en la GP32. Probablemente los algoritmos valgan también para la GP2X si tienen la pantalla rotada internamente como la GP32.
En el ZIP adjunto teneis la parte Win32; es deicr, el ejecutable (y su código fuente, que sé que os gusta enredar) para convertir ficheros .tga en los .rle que procesa el resto del código.
Para convertir una imagen:
tga2nrlespr imagen.tga imagen.rle número_de_sprites_que_contiene
El código de mi "graphics.c", ya dentro el proyecto de GP32, es el siguiente:
http://muer.njoerdba.com/paste/view....3-745af91c8b4a
Por supuesto, sacad las declaraciones de los tipos al .h y crear los prototipos de las funciones que querais utilizar también en el .h
Por cierto, pasad de las funciones LoadImage(), DrawImage(), etc., que son para otro formato de fichero (se me ha olvidado quitarlas antes de pegarlas en el Stuart's sumptuous paste site). Las que os interesan son las LoadSprite(), DrawSprite(), etc.
Para cargar un sprite le pasais un puntero a struct stSprite, la cadena con el nombre de la imagen (habreis llamado mucho antes a GpFatInit() y GpRelativePathSet()) y el color a partir del cual puede cargar (por ejemplo, si se pasa un 8 y la imagen tiene 3 colores, se utilizarán las entradas 8, 9 y 10 de la paleta).
Sed buenos.
Nés.
Marcadores