注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

清风的博客

我为人人,人人为我。

 
 
 

日志

 
 

AS3.0粒子效果  

2014-01-14 14:40:34|  分类: 【flash教程】 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 

//创建一张位图并在舞台上显示;
var trail_map:Bitmap = new Bitmap(new BitmapData(500,500,false,0x000000));
addChild (trail_map);
//给位图添加一模糊滤镜
trail_map.filters = [new BlurFilter(2,2,1)];
//创建一装粒子的容器并添加到舞台上
var particles_container:Sprite=new Sprite();
addChild (particles_container);
particles_container.x = 250;
particles_container.y = 240;
//创建一数组,装粒子
var particles:Array = new Array(101);
//粒子是用文本做的
for (var i:uint=0; i<101; i++)
{
    particles[i]=new TextField();
    particles_container.addChild (particles[i]);
}
//准备工作完成后,开始在帧频中显示出来
addEventListener (Event.ENTER_FRAME,stageFrame);
var cont:int = 0;//声明一个计数器的变量
var color:uint = 0x00ff00;
function stageFrame (e:Event):void
{
    //装粒子的容器在每一帧中旋转的角度
    particles_container.rotationX = cont * mouseX / 1000;
    particles_container.rotationY = cont * mouseY / 1000;
    //给我们放在数组中的文本粒子赋值“0”与“1”、颜色与坐标位置
    for (var i:int=0; i<101; i++)
    {
        particles[i].text = Math.round(Math.random()) + ' ';
        particles[i].textColor = color;
        particles[i].x = Math.sin(i / 5000 * Math.PI * cont) * i * 2;
        particles[i].y = Math.cos(i / 5000 * Math.PI * cont) * i * 2;
    }
    //给位图trail_map的数据添加一draw方法
    trail_map.bitmapData.draw (this);
    //计数器工作 自加1
    cont++;
    //每隔50帧就随机改变一次颜色
    if (cont % 50 == 0)
    {
        color = Math.random() * 0xffffff;
    }
}

  评论这张
 
阅读(56)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017