Flash AS3.0如何打造漂亮的水纹动画效果
本教程是向大家介紹利用Flash AS3.0打造漂亮的水紋GIF動(dòng)畫(huà)效果,教程很不錯(cuò),講解的也很詳細(xì),很值得學(xué)習(xí),喜歡的朋友可以過(guò)來(lái)學(xué)習(xí)一下!
在這個(gè)Flash AS3.0實(shí)例教程中,將用到置換圖濾鏡(DisplacementMapFilter)和BitmapData類(lèi)的的雜點(diǎn)功能(perlinNoise),這兩個(gè)家伙常常給我們帶一些令人興奮的效果,它們的合作為大家創(chuàng)造了一個(gè)漂亮的的水汶,看看下面的動(dòng)畫(huà),應(yīng)該還不錯(cuò)吧。
現(xiàn)在來(lái)構(gòu)建這個(gè)漂亮的水紋:
既然是水紋,想首先要找一張含水的圖片吧,河道,湖泊,水池,喜歡就行。
1、新建一AS3.0文檔,將幀頻設(shè)為30,將圖片導(dǎo)入到庫(kù)中,點(diǎn)右鍵,在屬性面板中將“使用JPEG導(dǎo)入品質(zhì)”前的鉤鉤去掉,這樣做圖片的體積就會(huì)大大地減小哦。
2、新建一個(gè)影片剪輯元件,將圖片拖到舞臺(tái)上,設(shè)置圖片的大小,你想設(shè)多大呢?反正我是按默認(rèn)的550x400。圖片在大小與文檔大小一樣大。點(diǎn)擊對(duì)齊面板,相對(duì)于舞臺(tái)居中對(duì)齊。
3、回到主場(chǎng)景,將MC拖到舞臺(tái)上,居中放置,為它設(shè)置一個(gè)實(shí)例名稱(chēng),我用的是“pic”圖層上鎖。
4、新插入一圖層,將圖片(注意是圖片不是MC),拖到舞臺(tái)上,打開(kāi)對(duì)齊面板,寬高匹配,居中對(duì)齊。現(xiàn)在第1,2層的圖像是完全重合的,請(qǐng)確認(rèn)是這樣的。選擇圖片,點(diǎn)擊 修改>分離,將水面部分選出,刪除。可以將第1層隱藏,看看刪除后的效果。
:
5、新建一層用來(lái)寫(xiě)代碼,打開(kāi)動(dòng)作面板,輸入下列代碼:
復(fù)制代碼
代碼如下:
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(Event.ENTER_FRAME ,ld);
7. function 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. }
OK,測(cè)試影片,一個(gè)漂亮的水汶效果立即出現(xiàn)在你的眼前。
代碼分析:
首先聲明了一個(gè)與圖片一樣大的BitmapData類(lèi)實(shí)例bmp,用來(lái)作為置換圖濾鏡的參數(shù)。
var bmp:BitmapData = new BitmapData(550,400);
然后聲明一個(gè)置換圖濾鏡zh,將bmp作為參數(shù)。
var zh:DisplacementMapFilter = new DisplacementMapFilter(bmp,new Point(0,0),1,2,10,600);
接下來(lái)聲明了兩個(gè)點(diǎn),并將這兩個(gè)點(diǎn)放到到一個(gè)叫zdxg的數(shù)組中,這個(gè)數(shù)組將用于bmp產(chǎn)生雜點(diǎn)的參數(shù)。
var p1:Point = new Point();
var p2:Point = new Point();
var zdxg:Array = [p1,p2];
然后,在ENTER_FRAME事件中調(diào)用ld函數(shù)。
addEventListener(Event.ENTER_FRAME ,ld);
ld函數(shù),動(dòng)態(tài)改變兩個(gè)點(diǎn)的位置,然后使bmp應(yīng)用雜點(diǎn)功能,在每一幀的間隔產(chǎn)生不同的雜點(diǎn)效果,使置換濾鏡效果產(chǎn)生變化,最后讓影片剪輯pic,應(yīng)用濾鏡,實(shí)現(xiàn)水汶效果。
function 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動(dòng)畫(huà)效果教程,希望大家喜歡!
總結(jié)
以上是生活随笔為你收集整理的Flash AS3.0如何打造漂亮的水纹动画效果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 怎么在flash中制作打字动画图
- 下一篇: 创建Flash站点有什么可用性技巧(山西