天才教育網(wǎng)合作機(jī)構(gòu) > 設(shè)計(jì)軟件培訓(xùn)機(jī)構(gòu) > Flash培訓(xùn)機(jī)構(gòu) >

東莞設(shè)計(jì)培訓(xùn)網(wǎng)

歡迎您!
朋友圈

400-850-8622

全國統(tǒng)一學(xué)習(xí)專線 9:00-21:00

位置:設(shè)計(jì)軟件培訓(xùn)資訊 > Flash培訓(xùn)資訊 > Flash動(dòng)畫的“遮丑”研究

Flash動(dòng)畫的“遮丑”研究

日期:2005-12-23 00:00:00     瀏覽:229    來源:東莞設(shè)計(jì)培訓(xùn)網(wǎng)
長久以來,我們在制作動(dòng)畫的時(shí)候很少關(guān)心“遮丑”問題,一至于有些看起來制作挺好的作品,在發(fā)布的時(shí)候因?yàn)楫嬅娴膶挾瘸^了影片的寬度而使場景外的東西在發(fā)布的網(wǎng)頁或者說是播放的影片中展露出來,會(huì)使你感覺束手無策。一個(gè)小問題就上升到了一個(gè)引起關(guān)注的程度上來,自然在網(wǎng)絡(luò)中,就有人寫出了這方面的文章,加以研究,高手也都會(huì)用“遮丑”把自己不想展露的東西遮擋起來,可是有些時(shí)候普通制作的“遮丑”也不是完全能起作用,下面我們看一個(gè)例子:


遮丑無效的效果

這里上下的黑邊是我作的“遮丑”,其實(shí)這里“遮丑”并沒起作用,并沒擋住雨滴在銀幕外出現(xiàn),用普通實(shí)現(xiàn)的“遮丑”在這里是不是不起作用?

  為什么會(huì)出現(xiàn)這樣的問題?在這里我要多說幾句,希望大家不要嫌煩!我們知道,FLASH動(dòng)畫是基于時(shí)間軸的線性動(dòng)畫,而時(shí)間軸上有圖層,這樣就會(huì)出現(xiàn)一個(gè)圖層的級別問題,也就是我們常說的深度的問題,上面的圖層總是覆蓋住下面的圖層,直接的說,就是深度值大的圖層遮蓋深度值小的圖層,而在flash中又規(guī)定了腳本的層級深度高于任何級別的場景中非腳本創(chuàng)建的影片層級深度,所以上面大家看到的下雨是我用腳本創(chuàng)建的一個(gè)下雨的效果,而遮丑是我用手工拖入到場景一個(gè)影片剪輯,這樣根據(jù)腳本的深度級別高于非腳本創(chuàng)建的影片剪輯深度級別,自然就會(huì)使“遮丑”失效,因?yàn)橄掠甑纳疃雀哂谟糜凇罢诔蟆庇捌糨嫷纳疃?。如何解決“遮丑”失靈的問題呢?下面我來談?wù)勥@方面的問題。

  我們知道在FLASH腳本中,我所接觸到的涉及到深度的命令只有三個(gè)(我只是說我所接觸到的)duplicateMovie();,attachMovie();,createEmptyMovie();分別是復(fù)制影片剪輯命令,創(chuàng)建位于庫中的影片剪輯,創(chuàng)建空的影片剪輯。而這三個(gè)命令的層級深度是在一個(gè)級別上的,也是處于*級別上的,所以這就給我們實(shí)現(xiàn)任何情況下都能實(shí)現(xiàn)“遮丑”提供了可能,我的思路是,用普通的方法創(chuàng)建一個(gè)“遮丑”影片剪輯,然后利用腳本調(diào)用,然后設(shè)置其深度,這樣就會(huì)避免出現(xiàn)上面出現(xiàn)的問題了,而用腳本控制*的方法就是實(shí)現(xiàn)直接用腳本調(diào)用位于庫中的影片剪輯,就是用attachMovie();這個(gè)命令,下面我們看代碼:


_root.onLoad = function() {
attachMovie("zedang", "zedang", 10000);
this.zedang._x = Stage.width/2;
this.zedang._y = Stage.height/2;
};


其中zedang是我制作的“遮丑”影片剪輯的鏈接名,影片剪輯的注冊點(diǎn)在中心,在主場景中調(diào)用是讓其位于場景中心,所以我用了this.zedang._x = Stage.width/2;this.zedang._y = Stage.height/2;這樣不管你場景設(shè)置多大,都會(huì)保證這個(gè)“遮丑”位于場景的中心,深度我隨便設(shè)置為10000,我想你作一個(gè)影片不會(huì)有一萬多個(gè)圖層吧,哈,這個(gè)如果你確實(shí)是圖層多,這里可以設(shè)置為10000000,也不是不可以的,這個(gè)腳本保證了在任何情況下都會(huì)把你的“丑”遮住的,不信?試試,下面我把源文件公布出來,大家可以下載研究,也可以提出不同意見,我的想法也可能不成熟,不過感覺還是不錯(cuò)的,在這里大家不要見笑喲。下面是我制作的完整的下遮丑效果及下雨的代碼腳本。

“遮丑”效果




_root.onLoad = function() {
Num = 200;
attachMovie("zedang", "zedang", 10000);
this.zedang._x = Stage.width/2;
this.zedang._y = Stage.height/2;
for (var i = 0; i attachMovie("yu", "yu"+i, i);
_root["yu"+i]._x = Math.floor(Math.random()*500);
_root["yu"+i]._y = Math.floor(Math.random()*400);
_root["yu"+i]._rotation = -32;
_root["yu"+i]._alpha = Math.floor(Math.random()*i);
_root["yu"+i]._xscale = _root["yu"+i]._yscale=25;
_root["su"+i] = (3+i/Num);
}
};
this.onEnterFrame = function() {
for (var k = 0; k this["yu"+k]._x += _root["su"+k];
this["yu"+k]._y += _root["su"+k];
if (this["yu"+k]._x>500) {
this["yu"+k]._x = 0;
}
if (this["yu"+k]._y>400) {
this["yu"+k]._y = 0;
}
}
};

如果本頁不是您要找的課程,您也可以百度查找一下: