Conectar-se
Quem está conectado
32 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 32 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 19/08/2010
Número de Mensagens : 1299
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 47

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Desenhar com alpha diferente

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)
avatar
Ranking : Sem avaliações
Data de inscrição : 08/06/2008
Número de Mensagens : 2314
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 100

Prêmios
   : 3
   : 0
   : 1
Ver perfil do usuáriohttp://blackcapapps.blogspot.com.br/

Re: Desenhar com alpha diferente

em Sex 06 Jul 2012, 10:43
Código:
draw_set_alpha(alpha);
avatar
Data de inscrição : 19/08/2010
Número de Mensagens : 1299
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 47

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: Desenhar com alpha diferente

em Sex 06 Jul 2012, 10:46
NUm pode, pois o draw_set_alpha acaba alterando os outros tambem.
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Desenhar com alpha diferente

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.
avatar
Data de inscrição : 19/08/2010
Número de Mensagens : 1299
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 47

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: Desenhar com alpha diferente

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
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Desenhar com alpha diferente

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);
avatar
Data de inscrição : 19/08/2010
Número de Mensagens : 1299
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 47

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: Desenhar com alpha diferente

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 !
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum