Mayo 19, 2011, 02:25:32 AM Ultima modificación: Mayo 20, 2011, 12:12:00 AM por JRX7500
No se si se le llame asi, al menos asi solia usarla cuando programaba en mugen, esto lo usaba para efectos con un fondo negro y al aplicarles esta transparencia el fondo se quitaba y el efecto quedaba brillante, hay manera de aplicar esto en gm por que tengo unos efectos de magias que me encantaria poder usar en mi juego.

#1 Mayo 19, 2011, 03:28:56 AM Ultima modificación: Mayo 19, 2011, 03:32:26 AM por Topet
Segun lo que entendi, prueba a usar las funciones de "blend mode":
Cita de: Manual
Hay dos funciones m?s que son muy ?tiles para dibujar texturas. Normalmente, las primitivas se mezclan con el fondo usando el factor de transparencia. Pero puedes controlar la forma en que sucede esto. Por ejemplo, puedes indicar si los colores de la primitiva deben sumarse a los del fondo o restarse. De esta forma puedes crear puntos de luz o sombras. Tambi?n es posible elegir el m?ximo entre el nuevo color y el color original para evitar efectos de saturaci?n que ocurren al sumar varios colores. Observa que ni al restar, ni al calcular el m?ximo se toma en cuenta el valor de transparencia totalmente (DirectX no lo permite), as? que debes asegurarte de que el ?rea alrededor es negra. Como ya hemos dicho, hay dos funciones para esto. La primera te da las cuatro opciones ya descritas. La segunda te da muchas m?s opciones. Es muy recomendable que experimentes con estas funciones ya que se pueden crear efectos muy espectaculares como explosiones, sombras, efectos de luz, halos...

draw_set_blend_mode(mode) Indica el modo de mezcla a usar de entre los siguientes: bm_normal, bm_add (suma), bm_subtract (resta), y bm_max (m?ximo). No olvides volver a poner el modo normal cuando termines lo que est?s haciendo por que esto afectar? a la forma en que se dibujan los sprites y fondos.
draw_set_blend_mode_ext(src,dest) Indica el modo de mezcla que se debe usar para la fuente y el destino. El color resultante se calcula aplicando a cada color (fuente y destino) un factor diferente. Estos factores de mezcla se especifican con esta funci?n. Los colores de fuente y el destino est?n formados por las componentes de rojo, verde, azul y transparencia. As?, llamamos a los componentes de la fuente (Rf,Gf,Bf,Af) y a los del destino (Rd, Gd, Bd, Ad). Todos estos factores se encuentran entre 0 y 1. Los factores de mezcla que puede usar en esta funci?n son:

    bm_zero: El factor de mezcla es (0, 0, 0, 0).
    bm_one: El factor de mezcla es (1, 1, 1, 1).
    bm_src_color: El factor de mezcla es (Rf, Gf, Bf, Af).
    bm_inv_src_color: El factor de mezcla es (1?Rf, 1?Gf, 1?Bf, 1?Af).
    bm_src_alpha: El factor de mezcla es (Af, Af, Af, Af).
    bm_inv_src_alpha: El factor de mezcla es (1?Af, 1?Af, 1?Af, 1?Af).
    bm_dest_alpha: El factor de mezcla es (Ad, Ad, Ad, Ad).
    bm_inv_dest_alpha: El factor de mezcla es (1?Ad, 1?Ad, 1?Ad, 1?Ad).
    bm_dest_color: El factor de mezcla es (Rd, Gd, Bd, Ad).
    bm_inv_dest_color: El factor de mezcla es (1?Rd, 1?Gd, 1?Bd, 1?Ad).
    bm_src_alpha_sat: El factor de mezcla es (f, f, f, 1); f = min(Af, 1?Ad).

Por ejemplo, el modo de mezcla normal pone la fuente a bm_src_alpha y el destino a bm_inv_src_alpha. No olvides volver a poner el modo normal cuando termines porque si no los sprites y fondos se dibujar?n con el nuevo modo.

Dibujar primitivas texturizadas es un poco complicado pero se consiguen resultados geniales. Puedes incluso crear juegos en falso 3D.

Exactamente lo que buscaba, gracias!

si despues de encontrar el efecto que buscas ser?as tan amable de mostrarlo y dar a conocer la combinaci?n de blend mode, te agradecer?amos mucho...

Cita de: CGM 2008CGM: Un poco mas serios, mejores Juegos.
Bienvenid@ a CGM. Recomenzamos desde cero, con un reglamento mas estricto, mejor definido y con mas ganas que nunca de hacer juegos con calidad comercial. El que avisa no es traidor: Leete las reglas si no quieres llevarte un capon makero.
Mercilessly!!
Plug-In para animaciones: http://ciberman.net/tweenline/

Me precipite al decir que era lo que buscaba, bueno si lo es pero el problema es que cuando lo aplique en mi juego se aplicaba a los sprites,backgrounds, etc... hay alguna manera de usarlo para que solo se aplique a algunos objetos y a otros no?

#5 Mayo 19, 2011, 10:26:00 PM Ultima modificación: Mayo 19, 2011, 10:28:04 PM por Topet
Solo falta aplicar la l?gica.
Si cambias el blending, se va a quedar asi para todo, para dibujar lo que quieres y para todo lo demas (sprites, backgrounds, etc...), entonces:
[gml]draw_set_blend_mode(bm_add)//lo cambias
//aqui todo lo que quieres dibujar
draw_set_blend_mode(bm_normal)//lo devuelves a normal[/gml]

Saludos

Muchas gracias. Ahora si es perfecto justo lo que buscaba!
Dejo la imagen para que puedan ver el efecto que se consigue:



La primera es el sprite original y la segunda despues de aplicar el blendmode.

Muchas gracias Topet!