fpg32converter

Started by DCelso, December 10, 2008, 05:06:44 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DCelso

Hola a todos, he hecho una adaptación de códigos que he ido viendo para crear un conversor (y a la vez compresor) de fpgs a fpgs de 32 bits, gracias a que el nuevo bennu solo graba pngs de 32 bits.

viene con un runme.bat para windows y necesita tener en el path el directorio de bennugd o bién copiar todos sus archivos al directorio del fpg32converter.
ejemplo de ejecución
runme.bat miarchivo.fpg
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

graba png de 32 solo si esta en modo 32, en modo 16 no deberia grabar png de 32...

gracias
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

Ostras, pues entonces he encontrado un bug o algo raro, resulta que si haces set_mode(20,20,16); cargas un png (8,16 o 32), luego guardas con save_png y luego abres el resultado con el GIMP, ves que tiene el canal alpha activado, y si vas a las propiedades del archivo te pone quees un png de densidad 32 bits.
En cambio curiosamente si haces set_mode(20,20,16) insertas en un nuevo fpg los load_png y haces save_fpg sí que guarda un fpg de 16 bits que se puede abrir con el fpgedit. (pero para mi que por dentro debe tener las imágenes png de 32 bits.)

Dejo la nueva versión de fpgconverter que ahora crea los dos tipos, 16 y 32, el de 8 no lo crea porque cualquier valor de 16 bits en el set_mode da como resultado un fpg de 32 bits.


Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

no, no tiene de 32 bits... deberia tener de 16 o 24...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

#5
no entendí lo de los 24 bits, ¿a qué te refieres?
Al exportar los pngs y abrirlos con el microsoft office picture manager (o cualquier otro visor) pone densidad de color 32 bits, de todos los modos que puse con set_mode, es decir, nunca conseguí que pusiera ni 24 ni 16 ni 8.

Mira el ejemplo con una imagen de tu sistema de menus.
8 + 8 + 8 + 8 = 32
R__G__B__Canal_Alpha.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

es cierto, los png son siempre de 32 bits... incluso los png al leerlos en bennu, siempre son de 32 bits, salvo el caso de 8 bits...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

animanegra

Los pngs se pueden guardar con color indexado y de manera que usen paleta de n colores ocupando lo que toque en cada caso. Usea que no tienen porque ser de 32 bits de profundidad de color.
"PoCoYo es dios!!"

SplinterGU

yo tampoco, preguntale a los creadores originales de fenix...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

http://en.wikipedia.org/wiki/Portable_Network_Graphics
http://libpng.org/pub/png/spec/1.2/PNG-DataRep.html

yo creo que hay que tirar a la mierda la vieja implementacion fenix de carga de imagenes y hacer una nueva...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

osk

¡¡Más leña al fuego!!
¿E implementar el APNG: http://en.wikipedia.org/wiki/APNG ?
Aaaahhhh!!!!!

SplinterGU

ummm... mapas animados, descartado... pero... quizas estaria bueno implementar esas cosas como si se trataran de fpg... o sea, un mapa animado, seria un fpg... del cual los id de grafico irian de 1-N, siendo N el ultimo cuadro de animacion del grafico... pero eso si, no se tendria otra informacion del mismo como ser tiempo de cada cuadro, etc... pero bueno, eso se puede tener en un archivo de datos... creo que seria interesante...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

#12
ok, yo he estado haciendo pruebas con el GIMP haciendo pngs simples y el resultado es el siguiente.
He tenido que hacerme mi propio programa para leer la info de los pngs ya que actualmente todos los que he probado me engañan y me dicen que el png es de densidad de color 32 bits y cuando los abres te das cuenta que son indexados.

http://www.megaupload.com/es/?d=U2E4CIGX

Adjunto una imagen que he ido acrecentando en número de colores empezando por dos colores, azul-blanco y terminando con RGB y canal alpha.

Como conclusión decir que libpng permite guardar pngs en todos los formatos conocidos de imagen. :D. En contraoposición a bennu que las haca todas de 32 bits.
Fenix no guardaba pngs así que npi.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Prg

Entonces no estaba loquito, y cuando quería esportar pngs en mi programa y me daban cosas raras no eran problemas de visión ni nada de eso :) .


Quoteyo creo que hay que tirar a la mierda la vieja implementacion fenix de carga de imagenes y hacer una nueva...

mmm!!! Suena bien!!!
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)

SplinterGU

Quote from: DCelso on December 11, 2008, 03:46:55 PM
ok, yo he estado haciendo pruebas con el GIMP haciendo pngs simples y el resultado es el siguiente.
He tenido que hacerme mi propio programa para leer la info de los pngs ya que actualmente todos los que he probado me engañan y me dicen que el png es de densidad de color 32 bits y cuando los abres te das cuenta que son indexados.

http://www.megaupload.com/es/?d=U2E4CIGX

Adjunto una imagen que he ido acrecentando en número de colores empezando por dos colores, azul-blanco y terminando con RGB y canal alpha.

Como conclusión decir que libpng permite guardar pngs en todos los formatos conocidos de imagen. :D. En contraoposición a bennu que las haca todas de 32 bits.
Fenix no guardaba pngs así que npi.

Te equivocas, bennu y fenix siempre guardaron png... lo que fenix no guardaba era fpg y map...
A ver que haya dicho que hay que tirar a la mierda, no tiene nada que ver con el tema en discusion...
Segun la documentacion, hay 3 tipos de png... paleta indexada (1 hasta 8 bits), escala de grises y rgb (32 bits)...
Todos funcionan... los png de 16/24, son en realidad 32 bits, solo que se toma de ellos los bits necesarios y se descartan el resto... asi funciono siempre la lectura de png en 16 bits... y para los 32 bits, lo unico que se hizo fue no descartar bits... o sea, que si el gimp te dije que es 32 bits, es correcto, los png rgb son 32 bits, siempre, y esto no tiene nada que ver con bennu...
Y deberias poder generar png de 8 y png rgb sin problemas...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2