Desenhar com alpha diferente

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido Desenhar com alpha diferente

Mensagem por Zero. em Sex 06 Jul 2012, 10:41

Pessoal como desenhar esta surface com alpha = 0.5 ?

Codigo :
Código:

//Começa a desenhar na surface
surface_set_target(ss)
   
    //Desenha retângulo branco
   
    draw_rectangle_color(0,0,640,480,c_white,c_white,c_white,c_white,0)
   
    //Se existe alguma luz
    if instance_exists(player)
    {
            with (player)
            {   
                //Desenha circulo preto
                draw_circle_color(x,y,96,0,c_white,0)     
        }       
    }

surface_reset_target()


//Entra no modo substract, que remove os pixels escuros pelo alpha, após deixar as cores negativas. Quanto mais escuro o pixel, mais transparente ele fica (Por isso a surface tem fundo branco, que negativada fica preta e não desaparece).
draw_set_blend_mode(bm_subtract)

//Desenha surface
draw_surface(ss,view_xview,view_yview)

//volta ao modo de desenho normal
draw_set_blend_mode(bm_normal)

THX


Última edição por FlyAway em Sex 06 Jul 2012, 13:34, editado 2 vez(es)

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por Kabeção em Sex 06 Jul 2012, 10:43

Código:
draw_set_alpha(alpha);

Kabeção

Ranking : Sem avaliações
Número de Mensagens : 2314
Data de inscrição : 08/06/2008
Reputação : 100
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 0
   : 1

http://blackcapapps.blogspot.com.br/

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por Zero. em Sex 06 Jul 2012, 10:46

NUm pode, pois o draw_set_alpha acaba alterando os outros tambem.

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por saim em Sex 06 Jul 2012, 11:07

Código:
oldAlpha = draw_get_alpha();
draw_set_alpha(0.5);
//desenha a surface
draw_set_alpha(oldAlpha);
ou:
Código:
draw_surface_ext(id,x,y,xscale,yscale,rot,color,alpha);
colocando 0.5 em "alpha"

(...)

Mas se for pra efeito de iluminação, parece que você está fazendo algo estranho com os blend modes. Talvez seja mais interessante criar uma surface preta com um furo transparente e desenhá-la normalmente na tela.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por Zero. em Sex 06 Jul 2012, 11:16

O surface ext naum deu certo.
Bem so que fazer um efeito de tocha T-T tenho pouca experiencia com isso mas tento me virar quando dá .

VALEW SAIM ERA QUASE ISSO, era so mudar a cor no surface ext pta ltgray que ficava claro

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por saim em Sex 06 Jul 2012, 13:57

É, pode se assim, também... bom, nesse caso, lembre-se que as cores podem ser criadas com make_color_rgb. Se todos os tons de cores forem iguais, a cor resultante será um tom de cinza. Assim, você pode usar:
Código:
intensidade = ??; // valor entre zero e um, sendo que "1" significa branco e "0", preto.
cor = make_color_rgb(intensidade * 255, intensidade * 255, intensidade * 255);

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por Zero. em Sex 06 Jul 2012, 14:02

Sim, mas como no code tem subtract pensei no gray que é meio branco (que é escuro) e meio preto (que é claro), assim ficaria meio escuro e meio claro da forma que pretendia com o alpha. Mas agora to com um problema um pouco mais tenso o_O . GO !

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: Desenhar com alpha diferente

Mensagem por Conteúdo patrocinado Hoje à(s) 12:30


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum