Simulação de Partículas

Requisitos: Conhecimentos mínimos em mapeamento UV, Curvas IPO e LogicsBricks.

Primeiros Passos – A Partícula Solitária

-- Para criarmos as partículas no Game Engine, vamos precisar de uma imagem semelhante a essa (não é necessário ter o canal alpha);

    Particula.jpg

- Adicione um plano (Add -> Mesh -> Plane);
- Em modo de Edição (TAB), rotacione o plano de forma que a face com a normal visível fique virada para o eixo –X (eixo x negativo). Esta operação é muito importante para o funcionamento da partícula;
- Mapeie o plano com nossa imagem;
- Na aba “Texture Face”, habilite os botões “Tex”, “Halo” e “Add”;

    Texture_Face.jpg

- Nomeie o plano como “Particula”.
- Agora adicione os seguintes logicBricks na particula:

    LogicBricks01.jpg

As configurações iniciais da nossa partícula já estão prontas, você já tem uma partícula solitária. Faça um teste (P). Se a partícula ficar virada sempre na direção da câmera, independente de onde ele esteja significa que você realizou todos os passos da forma correta.

    Particula_Teste_01.jpg

Emissão de Partículas
Já criamos nossa partícula, agora vamos aprender a fazer com que um objeto(Empty) passe a emitir várias partículas.
- Mova a partícula para um layer diferente (M) e oculte este layer;
- No layer visível, adicione um Empty;
- Configure os seguintes logicbricks no Empty:

    LogicBricks02.gif

Observação: No atuador “Edit Object” do tipo “Add Object”, “OB” é o nome do objeto que vai ser adicionado na cena e “Time” é o tempo de vida deste objeto. Então em nosso exemplo, o novo objeto criado vai ficar em cena um pouco mais de dois segundos (levando em conta que está configurado por padrão que cada vinte e cinco frames corresponde a um segundo).

Nossa partícula já está funcionando, faça um teste (P). Essas são as configurações básicas para que ela se torne funcional. Os próximos passos agora são incrementar para transformá-la em efeitos mais vistosos, de acordo com a imaginação do “desenvolvedor”. Mas para facilitar a sua vida, ai vão algumas dicas muito úteis:

Dica 01: Cintilância.
O Efeito de Cintilância dá a impressão de que as partículas estão piscando. Esse efeito pode se atingido de duas maneiras, ou se preferir a união das duas.
A primeira maneira é adicionar uma curva IPO na partícula que vai aumentar e diminuir seu tamanho em um determinado espaço de tempo. Depois adicionar um atuador “IPO” do tipo “Play” que vai executar essa animação constantemente. Como já temos um sensor “Always”, é só ligar em seu respectivo Controller.
A segunda maneira é idêntica à primeira, a diferença é que em vez da fazê-la no objeto “Particula”, vamos aplicá-la no objeto “Empty”.
Nos dois casos, a curva IPO ficaria mais ou menos assim:

    IPO_Curve01.jpg

E nosso atuador assim:

    LogicBricks03.jpg

Resultado animando o “Empty":

    Particula_Teste_02.jpg

Dica 2: Velocidade de Emissão de Partículas.
Até agora, em nossos exemplos, a quantidade de emissão partículas está no máximo, mas se você quiser dar uma diminuída, para causar um efeito melhor ou até mesmo para melhorar o desempenho, faça o seguinte: No sensor “Always” do “Empty” existe uma opção representada pela letra “f” com o valor padrão de 0. Esta opção representa o delay que o Sensor vai sofrer para executar sua ação. Se o valor fosse 5, então irá imitir a partícula a cada 5 frames.
No meu caso, coloquei o valor 15, o resultado foi esse:

    Particula_Teste_03.jpg


Dica 3: Colorindo as Partículas

As partículas podem assumir várias cores, inclusive mudar de cor gradativamente (isso é muito útil se queremos fazer um efeito simulando fogo, já que sua base é vermelha e o topo é amarelado). Para conseguirmos trabalhar com as cores, vamos ter que usar curvas IPO. Selecione o objeto “Particula”, e em suas curvas IPO, localize os canais ColR, ColG, ColB(que representam respectivamente os canais Vermelho, Verde e Azul). Selecione os canais e, na janela, segure CTRL e clique aonde você quer criar uma Chave IPO correspondente a aquela cor.
Observer a figura:

    IPO_Curve02.jpg

Em nosso exemplo, colocamos todos os canais com o valor de 1.00. Esse é o valor máximo. Como nos sabemos, a união de todas as cores formam o branco, então se colocar todos os canais com o valor 1.00, a partícula vai ficar branca. Se quisermos que a partícula fique com o valor máximo vermelho, então teremos que configurar da seguinte maneira: ColR:1.00, ColG:0.00, ColB:0.00.

    Particula_Teste_04.jpg

Animando esses canais de cores, podemos conseguir efeitos bem legais:

    Particula_Teste_05.jpg

Coloquei aqui apenas algumas dicas de como melhorar nossa partícula, mas existem muitas outras coisas que podem ser feitas, vai da criatividade de cada um. Grande parte do que foi posto neste artigo não é regra, pode e deve ser modificado, dependendo de sua necessidade.

Bom divertimento!

Share and Enjoy:
  • del.icio.us
  • digg
  • Furl
  • LinkaGoGo
  • Ma.gnolia
  • NewsVine
  • Reddit
  • Shadows
  • Smarking
  • YahooMyWeb


Maio 2007

4 Responses to “Simulação de Partículas”


backstageel Says: 2007-06-05at 11.02 am

E ai mano?
fui seguir o seu tuto e ja me deparei com problemas: quando adiciono a textura e configuro halo,add,etc.. e preciono P o plano nao aparece.
Mas desconfio que seja o seguinte: como faco para virar a Normal para o eixo X( ou seja onde esta a normal dum objecto)?

Omegax Says: 2007-06-05at 11.57 pm

Backstageel. Podemos dizer de modo bem vulgar que a normal de uma face é o lado principal(No game engine a que parece visível por padrão).

Para você saber qual lado é a normal da face, basta entrar em modo de edição (TAB). Nos botões de edição (F9) irá aparecer o painel "Mesh Tools 1". Ative o botão "Draw Normals".Prontinho, o lado da normal será o que tem um risco.

Para visualizar os eixos do objeto, entrar nos botões de objeto (F7) e no painel "Draw", habilitar o botão "Axis".

Com essas opções habilitadas fica fácil. Para a partícula funcionar, você vai ter que virar a normal da face para o eixo X negativo (-x).

Inté!

Backstageel Says: 2007-06-07at 10.02 am

Agora que ja conheco a normal dum objecto, fui seguir o tutorial,mas acontece outra coisa estranha: a particula so aparece quando estou na visao frontal e nao na visao de camera. a que se deve?

Omegax Says: 2007-06-07at 10.25 am

Dá uma conferida se a particula está com o botão Halo ativado e se a normal está virada para o eixo X negativo do OBJETO. Provavelmente deve ser isso!

Post A Comment