超酷flash光晕移动效果
先看效果:
分析代码:
//一开始要导入一个Tweener包,
//这个包在国外非常流行啦,
//可以去http://code.google.com/p/tweener
//下载
import?caurina.transitions.*;
//定义2个变量,分别代表场景的宽和高
var?stageWidth:int?=?stage.stageWidth;
var?stageHeight:int?=?stage.stageHeight;
//加载一个跟场景一般大小的位图
var?bmd:BitmapData?=?new?BitmapData(stageWidth,stageHeight,true,0x000000);
var?bm:Bitmap?=?new?Bitmap(bmd);
addChild(bm);
//从库里加载"logo",这个是在库里面先定义好的
var?logo:myLogo?=?new?myLogo();
addChild(logo);
//这里使用了Tweener类,可以读解为:
//对"logo"添加动画,使其在1秒钟内(x,y)坐标移动至场景内的随机一点,并随机旋转(0~360)度。默认缓冲动画效果。
//当动画结束后,自动加载loop方法(即再次执行loop)
function?loop():void?{
Tweener.addTween(logo,?{x:Math.random()*stageWidth,y:Math.random()*stageHeight,
rotation:Math.random()*360,time:1,onComplete:loop});
}
loop();
//效果的关键:
//每一帧都将当前的场景描绘为位图,并加载模糊滤镜。
addEventListener(Event.ENTER_FRAME,?burnLogo);
function?burnLogo(e:Event):void?{
bmd.draw(this);
bmd.applyFilter(bmd,bmd.rect,new?Point(0,0),new?BlurFilter(8,8,3));
}
呵呵...完成。希望大家都能做出酷酷的效果~~
本文转自:http://www.5uflash.com/flashjiaocheng/Flashdonghuatexiao/2964.html