Efeito de clarão ao explodir bomba

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

Efeito de clarão ao explodir bomba

Mensagem por Ricardo Alves em Qua 05 Set 2012, 13:18

Olá pessoal, sou novo por aqui... Amei este fórum, sempre consegue sanar minhas dúvidas cruéis e insanas. Bem, irei postar aqui uma que está deixando minha inteligência inquieta:

Já viram a bomba de Hiroshima ou qualquer outra explosão atômica? Já repararam que ao explodir elas emitem um clarão ou brancão (parecendo que o mundo irá acabar)? Pois é, acho que vocês já estão sacando qual é minha dúvida... Gostaria de saber como fazer esse efeito quando meu player atira ou algo explode. Se for possível gostaria de fazer isso na versão lite (que não é paga). Obrigado a todos!


Última edição por Ricardo Alves em Sex 07 Set 2012, 01:06, editado 1 vez(es)

Ricardo Alves

Número de Mensagens : 14
Data de inscrição : 05/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Efeito de clarão ao explodir bomba

Mensagem por saim em Qua 05 Set 2012, 13:32

Um clarão na tela inteira, que aos poucos vai sumindo? Simples, desenhe um retângulo branco sobre a tela inteira, com um alpha que diminui a cada step, chegando a zero. Quando chegar a zero, pode parar de desenhar o retângulo.

Você pode usar um objeto-efeito pra isso, colocar ele numa depth negativa (pra ficar sobre todos os objetos) e variar o alpha a ser usado no step_event. No draw_event, você define a cor (branco) e o alpha (variável, definido no step), desenha o retângulo e lembra de voltar a cor e o alpha pros valores anteriores (as funções draw_set_color e draw_set_alpha afetam todos os objetos, então é recomendável deixar tudo como estava ao final do evento).
Já que o objeto perde a utilidade quando fica transparente, elimine-o no momento em que o alpha a ser usado for zero.

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

Re: Efeito de clarão ao explodir bomba

Mensagem por Ricardo Alves em Qua 05 Set 2012, 13:46

Ótimo, ótimo! Mas tipo, no meu caso eu não queria a tele inteira, é só uma pequena área de preferência circular, para criar um efeito mais real e espetacular Cool de um tiro pequeno por exemplo. Pressuponho que ao invés de desenhar o retângulo e na tela inteira, eu desenho um círculo e menor ok?

Bem, com essas funções que você disse eu consigo fazer isso tudo né? Quais as variáveis que essas funções possuem? Obrigado!

Ricardo Alves

Número de Mensagens : 14
Data de inscrição : 05/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Efeito de clarão ao explodir bomba

Mensagem por Thiago_o_programador em Qua 05 Set 2012, 14:08

Simples, em vez de criar um retangulo do tamanho da tela crie um pequeno circulo:
Tente essas funções pode ajudar:
Código:
draw_set_circle_precision(precision) //precisão do circulo
draw_circle(x,y,r,outline) //circulo
depth+=5 //profundidade (lembre-se de no create seta-la como uns -50
image_alpha-=.05 //image_alpha (jura?)
draw_set_alpha(image_alpha) //transparencia real

Thiago_o_programador

Ranking : Nota D
Número de Mensagens : 709
Idade : 19
Data de inscrição : 14/05/2009
Notas recebidas : D - C - D - C
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://www.jogosdahora.maisblog.net

Voltar ao Topo Ir em baixo

Re: Efeito de clarão ao explodir bomba

Mensagem por Ricardo Alves em Qua 05 Set 2012, 15:04

Hehehe, é muita coisa de uma vez, vou testar tudo aqui e aprender umas coisinhas que num sabia, eu voltarei quando conseguir criar o efeito ou para mais dúvidas.

Ricardo Alves

Número de Mensagens : 14
Data de inscrição : 05/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Efeito de clarão ao explodir bomba

Mensagem por saim em Qua 05 Set 2012, 15:53

Beleza. Só tome cuidado com os argumentos usados, o Thiago_o_programador só mostrou as funções mais importantes, não é um código pra copiar e colar.
image_alpha é uma variável local do objeto (usada principalmente pra desenhar a sprite), não precisa ter relação com a função draw_set_alpha. Como provavelmente será um objeto sem sprite, não tem importância, mas é bom saber.
E lembre-se: draw_set_alpha afeta outros objetos. Isso quer dizer que não basta substituir os argumentos acima, é importante lembrar de
1- definir a cor e alpha a usar no objeto
2- fazer o desenho
3- definir a cor e alpha pra usar no resto do jogo
nessa ordem.

draw_set_circle_precision() também é uma função que afeta o jogo inteiro, portanto pode ser usada uma única vez, logo no começo do jogo. Eu nunca caí na necessidade de usar um valor menor que o máximo (64), mas o valor-padrão (32) pode te atender bem.

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

Re: Efeito de clarão ao explodir bomba

Mensagem por Ricardo Alves em Qua 05 Set 2012, 16:40

É, realmente só copiar-colar não vai dar certo (mesmo modificando uns valores), mas as fórmulas do Thiago foram utilíssimas, bem como suas explicações, que ajudam a entender tim-tim por tim-tim Laughing

É o seguinte, eu to fazendo aqui uns efeitos mas de uma forma um pouco diferente... Eu criei um objeto circular já colocando uma sprite desenhada (com cor), para não ter necessidade de usar outras funções que o desenhe e nem atrapalhar outros objetos, e coloquei na step a transparência (image_alpha-=0.5) e defini depth, como -50, e só. Aí quando a nave atira, ela chama esse objeto, criando o efeito. O que vocês acham disso?

Eu queria também que esse clarão só aparecesse nos outros objetos, e não no fundo (que é em preto, pois estou no espaço), para ficar mais real. E eu só não intendi muito bem como funciona a função draw_set_alpha. Como assim transparência real, como o Thiago disse?

Ricardo Alves

Número de Mensagens : 14
Data de inscrição : 05/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Efeito de clarão ao explodir bomba

Mensagem por saim em Qua 05 Set 2012, 16:59

Estou quase na minha hora, aqui, então serei breve:
Sua solução é tão válida quanto desenhar o círculo. A sprite ocupa um pouquinho a mais do seu HD, mas não precisa esquentar a cabeça com isso não. Em termos de processamento e resultado, acho que dá na mesma.
Pra desenhar só nos objetos afetados, você vai precisar da versão PRO. Isso envolve surfaces e blend modes, não dá pra fazer no lite. Mas você pode criar sprites brancos pra todos os objetos e definir quais serão afetados (não recomendo, mas pode).
O draw_set_alpha pode ser entendido como um valor de transparência, sim. Na verdade, a coisa é mais complexa, mas isso não vem ao caso (se quiser saber mais, tem um tutorial de cores na minha assinatura em que eu falo do assunto - e um de blend modes, onde o buraco é bem embaixo). Basicamente, é a opacidade, numa escala de zero a um, em que o desenho será feito.

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

Re: Efeito de clarão ao explodir bomba

Mensagem por Ricardo Alves em Qua 05 Set 2012, 23:31

Bom, então quando eu tiver o original eu faço esse efeito... Obrigado a todos pela ajuda, pelo menos aprendi um bocadinho Laughing !

Ricardo Alves

Número de Mensagens : 14
Data de inscrição : 05/09/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Efeito de clarão ao explodir bomba

Mensagem por Conteúdo patrocinado Hoje à(s) 07:53


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