Bennu Game Development

Foros en Español => Sugerencias => Topic started by: panreyes on December 26, 2012, 01:32:29 PM

Title: load_jpg
Post by: panreyes on December 26, 2012, 01:32:29 PM
Puff... He escrito una parrafada tremenda explicando por qué sería muy útil que load_jpg, o algo similar, fuera oficial en BennuGD. En fin, reescribiré pero resumido -_-


En PiX Pang hay 90 niveles, cada uno con su fondo. Si están en JPG ocupan 100kb de media, si están en PNG 900kb.


Hace un tiempo ya quité los fondos en jpg para mejorar la portabilidad, pero me gustaría solucionarlo.


¿Se podría incluir oficialmente esa función? ¿Sería portable?
Title: Re:load_jpg
Post by: SplinterGU on December 26, 2012, 01:54:51 PM
meter jpg llevaria a cometer el error de novato de olvidar que los formatos con compresion con perdida darian problemas para usar luego mapas de durezas...
Title: Re:load_jpg
Post by: panreyes on December 26, 2012, 02:01:24 PM
Y será culpa de la función, no de los novatos mal informados xD
Title: Re:load_jpg
Post by: FreeYourMind on December 26, 2012, 08:35:29 PM
Usa formato map
Title: Re:load_jpg
Post by: panreyes on December 26, 2012, 08:39:47 PM
Utilizar map seria igual o menos productivo que PNG.
Title: Re:load_jpg
Post by: SplinterGU on December 26, 2012, 09:38:26 PM
no, no... esta bien la sugerencia de Free... si usas map (comprimido) no tienes perdida de calidad... quiero recordar que siempre estamos hablando de espacio en disco, porque en memoria no importa el formato del mapa, todos ocupan lo mismo
Title: Re:load_jpg
Post by: panreyes on December 26, 2012, 10:09:06 PM
¿Y qué diferencia tiene el MAP gzipeado con un PNG?


Pd: Antes de contestar, http://es.wikipedia.org/wiki/Portable_Network_Graphics
Title: Re:load_jpg
Post by: SplinterGU on December 26, 2012, 10:23:57 PM
que quieres que lea de ese link a wikipedia?
Title: Re:load_jpg
Post by: SplinterGU on December 26, 2012, 10:35:08 PM
puf... 1 imagen vale mas que 1000 palabras...


splinter@splinter:~/Bennu/dlls/gui/sample> ls -la bg640x480.map*
-rw-r--r-- 1 splinter users 27100 jul 23  2003 bg640x480.map
-rw------- 1 splinter users 35546 dic 26 19:29 bg640x480.map.jpg
-rw-r--r-- 1 splinter users 38438 dic 26 19:28 bg640x480.map.png
splinter@splinter:~/Bennu/dlls/gui/sample>


nuevamente free esta en lo correcto...
Title: Re:load_jpg
Post by: panreyes on December 26, 2012, 10:52:25 PM
Es cierto, pero no del todo.


PNG es para gráficos: tiene algoritmos de compresión sin pérdida de calidad.
JPG es para fotos: tiene pérdida de calidad pensando en el ojo y, si está bien ajustado, es prácticamente indeferenciable.
Os recomiendo ver como ejemplo esta imagen: http://bg.hi5bkk.com/images/wallpapers/Default_800x600.jpg Abrirla en Paint y ponerla en negativo para comprobar bien el efecto :)



Y os adjunto la misma foto en JPG, PNG y MAP (renombrado a MAP.GZ para que el foro me lo reconozca) como ejemplo.


JPG: 263KB
PNG: 564KB
MAP: 695KB
Title: Re:load_jpg
Post by: SplinterGU on December 26, 2012, 11:28:34 PM
no interesa que sea indeferenciable, interesa que no se puede usar luego para hacer map_get_pixel y comprobarlo contra un RGB... e interesa que luego pierdo tiempo en dar soporte explicando algo que explico 1000 veces y se vuelve a preguntar lo mismo...

como sea, puedes compilar la mod_image o algo asi... que te permite cargar virtualmente cualquier cosa

perdon, a veces me pongo intolerable... la verdad que no tengo pensado incluir ese formato, por lo menos no como un formato aislado... tenia pensando incluir la mod_image o algo similar que use SDL_image... pero ahora mismo estoy con otras cosas con bennugd, y hasta que no resuelva esos problemas que tengo, congelare todo otro desarrollo sobre bennugd... pero tengo en lista algo de eso...
Title: Re:load_jpg
Post by: panreyes on December 26, 2012, 11:44:38 PM
-_-

En fin, pues estoy como estaba. Los PNGs de la carpeta PiXFrogger 75MB en vez de los 8 que pesan en formato PNG.

Si no se puede cargar jpgs de forma oficial, no me sirve porque se rompe la portabilidad.
Title: Re:load_jpg
Post by: SplinterGU on December 26, 2012, 11:50:31 PM
bueno, justo estaba editando mi respuesta... ahi la puedes, leer... mas adelante incluire algo, sin dudas...

no tengo idea del tipo de licencia que necesita hacer un decoder jpg... y no se si eso traera problemas o no...

disculpame que casi siempre me comporte como un completo idiota... el estar en 800 cosas a 1000km/h me hace responder de la misma forma y comportarme como un idiota... disculpame...
Title: Re:load_jpg
Post by: panreyes on December 27, 2012, 12:38:12 AM
No te preocupes, gracias por entenderme :)


Y bueno, sería buena idea integrar algo como sdl_image, pero quizás es más trabajo que lo estrictamente necesario.


Con soportar PNG ya podemos trabajar de sobra, y si añadimos JPG sería por el motivo que comento aquí, no creo que hagan falta más formatos.
Title: Re:load_jpg
Post by: SplinterGU on December 27, 2012, 12:51:43 AM
png ya tenemos...

pero seria mas trabajoso hacer un decoder de jpg que integrar la SDL_image.
Title: Re:load_jpg
Post by: alex on December 27, 2012, 09:07:23 PM
No venia un codigo bennu para leer un jpg en el manual de osk????
Title: Re:load_jpg
Post by: panreyes on December 27, 2012, 09:34:13 PM
Si, pero utilizando mod_image. Eso ya se puede, pero no me sirve por ser una librería no oficial y no portada a muchas de las plataformas.
Title: Re:load_jpg
Post by: SplinterGU on December 27, 2012, 10:34:17 PM
supongo que si es un codigo en el manual de osk, no creo sea una dll, sino un codigo en prg... la verdad que nunca lei el manual de osk.
Title: Re:load_jpg
Post by: SplinterGU on December 27, 2012, 10:36:05 PM
edit: he buscado rapidamente y no he visto ningun codigo, solo referencias a productos que si los leen.
Title: Re:load_jpg
Post by: alex on December 27, 2012, 10:39:35 PM
ups perdon, era de lectura de bmp... en la pagina 541 numerada (547 pdf)