Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: Futu-block on October 01, 2011, 11:11:13 PM

Title: Destello de luz
Post by: Futu-block on October 01, 2011, 11:11:13 PM
Quiero hacer un destello de luz que alumbre un poco la zona donde vá...


Es un ambiente oscuro, asi que podria oscurecerlo con un grafico igual que la pantalla en negro con alpha al 50% delante del grafico a oscurecer; pero quisiera que donde pasara el personaje se viera mas claro, asi que le voy a poner un grafico redondo y blanco...


¿como le quito ese alpha en esa zona?
habia tambien algo como blur o algo de eso que igual me podria servir ¿no?

Title: Re: Destello de luz
Post by: kim-elet-o on October 02, 2011, 10:55:57 AM
Se me ocurre una idea, necesitaras para ello ademas de tu grafico oscurecedor, un grafico que tenga la forma de la zona a aclarar con alfa trasparente (si quieres darle aspecto mas realista añadele por el borde de la figura algun tipo de difuminado en el canal alfa), y un mapa para mezclar los dos mapas, primero pegas el grafico oscurecedor en el mapa de mezclado, y luego el mapa de zona de aclarado, en la posicion donde en la pantalla vayas a aclarar, prueba esto haber si te sirve.


Title: Re: Destello de luz
Post by: Futu-block on October 02, 2011, 11:30:14 AM
wo wo wo, mas lento porfa que soy torpe de entendimiento; ¿que es un mapa de mezclado???
Title: Re: Destello de luz
Post by: kim-elet-o on October 03, 2011, 07:45:31 AM
Bueno el mapa de mezclado es un mapa vulgar y corriente creado con New_Map, le pongo nombre de mapa de mezclado para poder referirme a el, y porque en el vamos a mezclar dos imagenes.
Title: Re: Destello de luz
Post by: Futu-block on October 03, 2011, 10:31:00 AM
que guay, cuentame mas que me interesa...

aunque ya he encontrado la manera; hago una imagen el doble de ancho x doble largo de la pantalla, en negro 90% (que despues sale transparente :D) y en el centro le pongo un circulo con degradado al color deseado; Esa imagen la centro en el personaje principal y que el resto lo oscurezca con un alpha determinado...

gracias de todas formas kim-elet-o
Title: Re: Destello de luz
Post by: SplinterGU on October 03, 2011, 11:16:18 AM
tambien puedes hacer un map_block_copy de la porcion que quieres mostrar, y luego ponerle encima una mascara con los bordes redondeados de lo que quieres ocultar, con esto tienes mucho menos informacion que procesar.
Title: Re: Destello de luz
Post by: kim-elet-o on October 04, 2011, 10:27:23 AM
De nada, encantado de servir.


Title: Re: Destello de luz
Post by: Outlaw on October 04, 2011, 04:47:21 PM
Podrian explicarlo paso por paso que la verdad me parece muy interesante y no entiendo todavia del todo como hacerlo...
Title: Re: Destello de luz
Post by: Drumpi on October 05, 2011, 07:54:28 PM
Bueno no sé si funcionaría, pero sabiendo que hay un mapa negro con 50% de transparencia ¿si le ponemos encima un gráfico gris (128,128,128) y usamos el blit aditivo no debería verse la imagen a su color real?

Esto mejor que lo explique Momia, que es el que más ha trabajdo con flags aditivos/sustractivos.
Title: Re: Destello de luz
Post by: Outlaw on October 05, 2011, 09:26:53 PM
Drumpi, pero esas dos imagenes no deberian ser a 16 bits de color?
Title: Re: Destello de luz
Post by: Futu-block on October 06, 2011, 08:20:09 AM
si si si, pero aqui no explica naide, ni siquiera un enlace al wiki...



(wiki te odio)
Title: Re: Destello de luz
Post by: SplinterGU on October 06, 2011, 03:32:43 PM
Quote from: Outlaw on October 05, 2011, 09:26:53 PM
Drumpi, pero esas dos imagenes no deberian ser a 16 bits de color?

16 o 32

Quote from: Futublock on October 06, 2011, 08:20:09 AM
(wiki te odio)

jajaja!
Title: Re: Destello de luz
Post by: Drumpi on October 07, 2011, 09:49:22 PM
Los flags aditivos se encuentran... en la variable local FLAGS. Su función: sumar a cada componente de los gráficos que están por detrás el valor de cada componente del pixel del gráfico que tiene el flag aditivo activado. Ejemplos... pues sólo recuerdo cierto Bola de Dragón que abandonó Momia hace ya muuuucho tiempo... o aquella demo que hice en Fenix para GP2X, que llamé Space_invaders_H2H o algo así (que tengo que portar a Bennu, a ver si así funciona bien el tema de las alphas y va mejor de rendimiento, que fue el primer juego al que le hice gráficos 3D pre-render).

Hace muuuucho tiempo, me dijeron un truco para hacer el clásico foco circular, en el que se veía la imagen de fondo a través del interior de un círculo, mientras el resto se veía negro: si el círculo tenía 50 pixels de diámetro, se creaba una imagen de 50x50, con un círculo transparente y el resto negro opaco. La imagen oculta se ponía en la región 1 y esta se definía con un tamaño de 50x50, de forma que sólo se vería esa porción de la imagen. Ya sólo queda poner el foco sobre la región y mover ambos a la vez.
Se podría hacer algo similar usando dos veces la imagen de fondo, una de ellas oscurecida, y encima, la que no está oscurecida dentro de la región.

No sé si me he explicado con claridad.
Title: Re: Destello de luz
Post by: Futu-block on October 07, 2011, 11:03:55 PM
perfectamente