本教程旨在向您介绍如何使用Flash AS3.0创建漂亮的水图案GIF动画效果。教程很好,讲解很详细,值得学习。喜欢的朋友可以来学习一下!
在Flash AS3.0的这个示例教程中,将使用BitmapData类的DisplacementMapFilter和noise函数。这两个家伙经常给我们带来一些刺激的效果,他们的合作给大家创造了一个美丽的水纹。看下面的动画,应该不错。
现在让我们建立这个美丽的水图案:
既然是水的图案,首先我想找一张包含水的图片,比如河流,湖泊,水池,如果你喜欢的话。
1.新建一个AS3.0文档,设置帧率为30,将图片导入库中,右键,去掉属性面板中“用JPEG导入质量”前的勾,这样图片的体积会大大减小。
2.创建一个新的电影编辑组件,将图片拖到舞台上,并设置图片的大小。你希望它有多大?反正我按默认的550x400。图片和文件一样大。单击“对齐”面板,使其相对于舞台居中对齐。
3.返回主场景,将MC拖到舞台上,将其放在中央,并为其设置一个实例名称。我使用了“pic”层来锁定它。
4.插入新图层,将图片(注意图片不是MC)拖到舞台上,打开对齐面板,匹配宽度和高度,居中对齐。现在1楼和2楼的图像完全重合了。请确保它是这样的。选择图片,点击修改分离,选择并删除水面部分。可以隐藏第一层,看到删除后的效果。
:
5.创建一个新层来编写代码,打开动作面板并输入以下代码:
复制代码
代码如下:
1.var BMP:BitmapData=new BitmapData(550,400);
2.var zh:DisplacementMapFilter=new DisplacementMapFilter(BMP,new Point(0,0),1,2,10,600);
3.var P1:Point=new Point();
4.var p2:Point=new Point();
5.var zdxg:Array=[p1,p2];
6.addEventListener(事件。ENTER_FRAME,LD);
7.函数ld(e:Event):void {
8.zdxg[0]。x=0.2
9.zdxg[1]。y=0.1
10.bmp.perlinNoise(168,5,2,4,true,true,2,true,zdxg);
11.pic . filters=[zh];
12.}
好了,测试一下片子,一个漂亮的水纹效果立刻出现在你的眼前。
代码分析:
首先声明一个BitmapData类bmp的实例,它有一张图片那么大,作为置换图过滤器的参数。
var BMP:BitmapData=new BitmapData(550,400);
然后声明一个置换映射过滤器zh,以bmp为参数。
var zh:DisplacementMapFilter=new DisplacementMapFilter(BMP,new Point(0,0),1,2,10,600);
接下来,声明两个点并放入名为zdxg的数组中,该数组将用作bmp生成噪声的参数。
var P1:Point=new Point();
var p2:Point=new Point();
var zdxg:Array=[p1,p2];
然后,在ENTER_FRAME事件中调用ld函数。
addEventListener(事件。ENTER_FRAME,LD);
Ld函数,动态改变两点的位置,然后让bmp应用噪波函数,在每一帧的间隔产生不同的噪波效果,从而改变替换滤镜的效果。最后让片子剪辑pic,应用滤镜实现水纹效果。
函数ld(e:Event):void {
zdxg[0]。x=0.2
zdxg[1]。y=0.1
bmp.perlinNoise(168,5,2,4,true,true,2,true,zdxg);
pic . filters=[zh];
}
以上是Flash AS3.0制作精美GIF动画教程。希望你喜欢!