Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: Noivern on December 14, 2010, 05:05:41 AM

Title: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Noivern on December 14, 2010, 05:05:41 AM
Eso pues, quería hacer un experimento con el set_text_color() pero no resulta con las las fuentes generadas normalmente con el fnt edit... ¿se podrán crear de otra manera para que sean de 1 bit de color?  ???
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Khedrak on December 14, 2010, 05:11:26 AM
Yo por lo menos no logre hacerlo... pero la solución que realicé fue el cambiar el color con el mismo "FNT EDIT", hay un boton que dice "color" en negrita, despues le haces click a "Definir colores personalizados >>" y luego ahí ajustas el RGB (rojo, verde, azul) para que sean los mismos que el RGB colocado en la función "set_text_color()".

Espero haberte ayudado...
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Noivern on December 14, 2010, 05:26:18 AM
Jeje gracias, si me habia dado cuenta de ese botón. Lo que quiero hacer es cambiar el color de la fuente según unos parámetros en la función donde las uso... quizas recorrer el mapa con un map_put_pixel(), pero creo que es muy lento para lo que quiero hacer.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Fede on December 14, 2010, 05:36:03 AM
Estoy haciendo un programa para portar cualquier fuente fnt a 1 bit, y precisamente voy a postear un poco de ayuda sobre ello.  :D
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Noivern on December 14, 2010, 05:39:31 AM
Quote from: Fede on December 14, 2010, 05:36:03 AM
Estoy haciendo un programa para portar cualquier fuente fnt a 1 bit, y precisamente voy a postear un poco de ayuda sobre ello.  :D
Buenísimo!! karma++ por adelantado :D
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Drumpi on December 14, 2010, 02:35:53 PM
Es que FNTEdit sólo es compatible con las fuentes de DIV, o sea, genera FNT en el formato antiguo en 8 bits.

Yo intenté crear un conversor de fuentes hace tiempo, pero sólo conseguí generar fuentes de 16 bits, las de 1 bit no funcionaron. Debe estar por el subforo de proyectos, FNTConv o algo así, por si lo quereis mirar (y decirme por qué falla).
Aviso, trabajo con los ficheros y fuentes "a mano", o sea, que no uso las funciones específicas de Bennu (lo que me habría ahorrado en su momento más de un quebradero de cabeza ^^U).
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: SplinterGU on December 14, 2010, 04:07:25 PM
Quote from: Drumpi on December 14, 2010, 02:35:53 PM
Es que FNTEdit sólo es compatible con las fuentes de DIV, o sea, genera FNT en el formato antiguo en 8 bits.

Yo intenté crear un conversor de fuentes hace tiempo, pero sólo conseguí generar fuentes de 16 bits, las de 1 bit no funcionaron. Debe estar por el subforo de proyectos, FNTConv o algo así, por si lo quereis mirar (y decirme por qué falla).
Aviso, trabajo con los ficheros y fuentes "a mano", o sea, que no uso las funciones específicas de Bennu (lo que me habría ahorrado en su momento más de un quebradero de cabeza ^^U).

creo que no funcionaba por algun bug en los fuentes de 1bit... no recuerdo, podrias probarlo nuevamente.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Fede on December 14, 2010, 10:15:29 PM
Quote from: Noivern on December 14, 2010, 05:39:31 AM
Quote from: Fede on December 14, 2010, 05:36:03 AM
Estoy haciendo un programa para portar cualquier fuente fnt a 1 bit, y precisamente voy a postear un poco de ayuda sobre ello.  :D
Buenísimo!! karma++ por adelantado :D

Gracias compañero.

Te acabo de colgar la alfa.

Saludos.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Drumpi on December 15, 2010, 02:32:16 PM
Quote from: SplinterGU on December 14, 2010, 04:07:25 PM
Quote from: Drumpi on December 14, 2010, 02:35:53 PM
Es que FNTEdit sólo es compatible con las fuentes de DIV, o sea, genera FNT en el formato antiguo en 8 bits.

Yo intenté crear un conversor de fuentes hace tiempo, pero sólo conseguí generar fuentes de 16 bits, las de 1 bit no funcionaron. Debe estar por el subforo de proyectos, FNTConv o algo así, por si lo quereis mirar (y decirme por qué falla).
Aviso, trabajo con los ficheros y fuentes "a mano", o sea, que no uso las funciones específicas de Bennu (lo que me habría ahorrado en su momento más de un quebradero de cabeza ^^U).

creo que no funcionaba por algun bug en los fuentes de 1bit... no recuerdo, podrias probarlo nuevamente.

Ayer hice una prueba con idéntico resultado, pero no sirve de nada, porque no sé qué versión tenía instalada en Linux. Voy a probar esta tarde en la de windows, que la tengo a la penúltima, a ver si hay suerte (he creado una fuente de 1 bit, pero no salen letras, aunque hace el amago).
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: SplinterGU on December 15, 2010, 03:14:25 PM
deberias probar con una nueva version.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: DCelso on December 15, 2010, 03:26:30 PM
al fpgedit2009 le añadí soporte para fpgs de un bit y probé que funcionasen. Creo que intenté hacer lo mismo con el fntmaker, pero lo dejé porque los fnts de 1 bit obtenidos no funcionaban en bennu, creí que se debía a que el sistema de guardar imágenes de un bit en fnt y en fpg variaba un poco.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Drumpi on December 15, 2010, 07:40:09 PM
Pues mira, usando un Bennu más moderno (r181 :D) he obtenido el mismo resultado... así que me he puesto a leer el código.
Y es que me extrañaba muchísimo que fuera un fallo de Bennu porque todo está construido a prueba de fallos y versiones del compilador/intérprete (vamos, que se hace todo a mano, hasta la conversión de colores :D). Y antes de que saques el cuchillo, Splinter, déjame decir que era uno de esos códigos que estaba usando para aprender a programar a bajo nivel :D

El caso es que le he echado un vistazo, y entre otras cosas, tenía un fallo en el cálculo de offsets (no existía dicho código ^^U), pero ya he solucionado gran parte, luego lo subo.
Y sí, Bennu permite leer perfectamente fnt de 1 bit de color y asignarle el color que se quiera con set_text_color, no hay fallos en eso (aunque se ven feas las fuentes de 1 bit si se convierten de otra de 8/16 que usa sombra :D :D :D).
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: SplinterGU on December 15, 2010, 08:33:11 PM
podrias eliminar la sombra.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Drumpi on December 15, 2010, 08:44:44 PM
Sí y no. Si la sombra es de un color específico, es probable que se pueda eliminar, pero no olvidemos que las fuentes de 8bits admiten texturas de 256 colores, tanto en la letra como en la sombra como en el borde, y que la sombra puede tener cualquier offset de desplazamiento.
Necesitaría una versión de la fuente sin sombra o crear un algoritmo de "cancelación de eco" en 2D para cualquier offset, algo que se escapa de mis conocimientos :D.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: SplinterGU on December 15, 2010, 08:47:38 PM
Quote from: Drumpi on December 15, 2010, 08:44:44 PM
Sí y no. Si la sombra es de un color específico, es probable que se pueda eliminar, pero no olvidemos que las fuentes de 8bits admiten texturas de 256 colores, tanto en la letra como en la sombra como en el borde, y que la sombra puede tener cualquier offset de desplazamiento.
Necesitaría una versión de la fuente sin sombra o crear un algoritmo de "cancelación de eco" en 2D para cualquier offset, algo que se escapa de mis conocimientos :D.

las fuentes de 1bpp no tienen sombra, las > a 8, permiten sombra, porque la sombra es un color, creo que todos los actuales programas que generan fuentes usan 1 unico color para la sombra... puedes descartar ese color, o generar 2 fuentes (o X) eliminando en cada 1, 1 de los colores, con lo cual, luego el usuario usaria el que sirve.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Drumpi on December 15, 2010, 08:55:20 PM
Quote from: Drumpi on December 15, 2010, 07:40:09 PM
(aunque se ven feas las fuentes de 1 bit si se convierten de otra de 8/16 que usa sombra :D :D :D).

Quote from: SplinterGU on December 15, 2010, 08:33:11 PM
podrias eliminar la sombra.

PD: FNTEdit permite usar una imagen como color de fuente, borde o sombra, así como DIV, que son mis referentes respecto a editores de FNT.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: SplinterGU on December 15, 2010, 09:18:08 PM
no sabia que fntedit te permitiera eso...
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: SplinterGU on December 15, 2010, 09:50:35 PM
ya agregue lectura de png de 1bpp, ahora me falta grabarlos.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: DCelso on December 15, 2010, 09:57:51 PM
 ::), pues karmón al canto.
Title: Re: ¿es posible crear fuentes de 1 bit con el fnt edit u otro programa?
Post by: Fede on December 15, 2010, 10:28:43 PM
MORE KARMA!