Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Ayuda para novel.No paseis de mi!!!

Iniciado por v_sss, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

v_sss

                                Holas foro:
Llevo un par de dias "incordiando" a la gente del canal para a ver si pueden
darme ideas o decirme como se hace un efecto que quiero realizar
(no se quien dijo: "Pregunta ahora y seras ignorante por 5 minutos. No preguntes
y seras ignorante todo tu vida"). Espero que no se enfaden @mICrO,@ASK, @AK47,@tmd y otros xD
Pues bien,lo que quiero hacer es algo como esto:

http://www.galeon.com/mimud/scr01.jpg

(esta simulado con el Paint Shop Pro)

Como vereis no es nada del otro mundo, un escenario 2d donde pueda "iluminar"
los elementos que quiera, en este caso, un enemigo y el protagonista.
Supongo que para hacerlo, hay que tratar el flare de una forma distinta a la habitual
pero no se como :triste:
Para el codigo uso DirectX y VisualBasic (si habeis leido bien, Visual Basic xD
ya que para hacer esto en VC++ Dev->SetRenderState D3DRENDERSTATE_DESTBLEND, D3DBLEND_INVSRCALPHA
hago esto en VB: Dev.SetRenderState D3DRENDERSTATE_DESTBLEND, D3DBLEND_INVSRCALPHA
Por otro lado no tengo el VC++ y de momento solo quiero aprender lo mas "basico"

(No pretendo hacer un nuevo QuaKA, sin ni siquiera saber lo mas simple)

Bueno, espero que no paseis de mi por no ser VCcero!                                

Ithaqua

                                Solo necesitas activar un modo de blending src*dest, para multiplicar el color del flare por el color destino y usarlo de lightmap.

No se la sintaxis en D3D, pero por lo que has puesto debe ser algo parecido a:

Dev->SetRenderState(D3DRENDERSTATE_SRCBLEND,D3DBLEND_DSTCOLOR);
Dev->SetRenderState(D3DRENDERSTATE_DESTBLEND,D3DBLEND_ZERO);

que traducido a fórmula sería lo que buscas:

srccolor*destcolor + destcolor * 0 =
srccolor*destcolor

                               
thaqua^Stravaganza
http://ithaqua.stravaganza.org






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.