Olá! Sexta Feira, 10 de Fevereiro de 2012.



Dicas CódigoFonte.net
Domingo, 07 de Dezembro de 2008

Partículas - Chuva [1 de 2]

A idéia é bem simples, criaremos um Movie Clip que será nosso pingo de chuva ( talvez você queira uma chuva de meteoros :O ), e iniciamos preenchendo pingos de chuva em toda a área da animação, em seguida definimos que todas as gotas irão pra baixo, e quando saírem da área, voltem a aparecer lá de cima. Parece complicado de entender lendo...

Clique para ver a imagem em seu tamanho real

Criemos então a gota, a minha foi só uma linha branca com 10 px de altura, e transformemos-a em um Movie Clip. Ainda na janela de conversão, clique no botão Advanced, pra ver as opções de linkage, caso esteja exibindo só o básico. Dê um nome de símbolo(pra Biblioteca) e deixe marcadas as caixas de Export for ActionScript e Export in first frame, depois dê um nome de idenficação (Identifier) e Ok. Isso é pra que consigamos replicar e multiplicar esse Movie Clip em tempo de execução. O Identifier é o nome qual iremos nos referir quando quisermos "materializar" cópias desse Movie Clip durante a codificação.

Depois disso você pode até apagar a gota que criou, o que importa é que ela foi pra biblioteca e agora é exportável.

Segue o código a ser colocado no 1º frame (de preferência o único):

var boundTop = 0-10;
var boundLeft = 0-10;
var boundRight = Stage.width+10;
var boundBottom = Stage.height+10;

var particleUnits = 100;
var particleSpeed = 5;

var particleRotation = 95;
var particleAngleRad = Math.PI / 180 * particleRotation; 
var particleSpeedX = Math.cos( particleAngleRad ) * particleSpeed;
var particleSpeedY = Math.sin( particleAngleRad ) * particleSpeed;

var conteiner = _root.createEmptyMovieClip('conteiner_mc',1);

for(var i = 0; i <= particleUnits ; i++)
{
    conteiner.attachMovie('mc_particle', 'particle_mc' + i, i);
    conteiner['particle_mc' + i]._x = Math.round(Math.random() * boundRight);
    conteiner['particle_mc' + i]._y = Math.round(Math.random() * boundBottom);
    conteiner['particle_mc' + i]._rotation = particleRotation - 90;
    
    conteiner['particle_mc' + i].onEnterFrame = function()
    {            
        this._x += particleSpeedX;
        this._y += particleSpeedY;
        
        if(this._x < boundLeft){this._x = boundRight;}
        if(this._y < boundTop){this._y = boundBottom;}
        if(this._x > boundRight){this._x = boundLeft;}
        if(this._y > boundBottom){this._y = boundTop;}
    }    
}

Na segunda parte seguem as explicações gota a gora desse código.

Até lá.

Comentários do artigo [Novo comentário]

marcio carvalho souza - 27 de Outubro de 2009 - 10:59
boa
Joaquim - 04 de Junho de 2010 - 12:19
tudo bem?
FILARMÔNICA DE BAIXA GRANDE - 23 de Janeiro de 2011 - 11:58
Temos enfrentado dificuldades para continuarmos o Projeto da Filarmônica aqui em Baixa Grande-Ba, más, não desistiremos ate que vejamos este sonho concretizado.
Para adicionar um comentário você deve efetuar o login


Gostou do CódigoFonte.net? Quer indicar a um amigo?
Preencha os campos a seguir.
Seu Nome:
Seu E-mail:
E-mail de seu Amigo:






CodigoFonte.net » CodigoFonte.eti.br » Compre De Tudo » Meu Mural » Competiva - Criação de Sites » Todos os Direitos Reservados © 2002/2010

Procurando Notebooks, Câmeras Digitais, iPhones?

CompreDeTudo.com