經(jīng)過一段時(shí)間的Flash學(xué)習(xí)之后,很多朋友開始對(duì)那些全Flash網(wǎng)站的制作發(fā)生興趣。全Flash網(wǎng)站基本以圖形和動(dòng)畫為主,所以比較適合做那些文字內(nèi)容不太多,以平面、動(dòng)畫效果為主的應(yīng)用。如:企業(yè)品牌推廣、特定網(wǎng)上廣告、網(wǎng)絡(luò)游戲、個(gè)性網(wǎng)站等。 制作全Flash網(wǎng)站和制作html網(wǎng)站類似,事先應(yīng)先在紙上畫出結(jié)構(gòu)關(guān)系圖,包括:網(wǎng)站的主題、要用什么樣的元素、哪些元素需要重復(fù)使用、元素之間的聯(lián)系、元素如何運(yùn)動(dòng)、用什么風(fēng)格的音樂、整個(gè)網(wǎng)站可以分成幾個(gè)邏輯塊、各個(gè)邏輯塊間的聯(lián)系如何、以及你是否打算用Flash建構(gòu)全站或是只用其做網(wǎng)站的前期部分等等,都應(yīng)在考慮范圍之內(nèi)。 實(shí)現(xiàn)全Flash網(wǎng)站效果多種多樣,但基本原理是相同的:將主場景作為一個(gè)"舞臺(tái)",這個(gè)舞臺(tái)提供標(biāo)準(zhǔn)的長寬比例和整個(gè)的版面結(jié)構(gòu),“演員”就是網(wǎng)站子欄目的具體內(nèi)容,根據(jù)子欄目的內(nèi)容結(jié)構(gòu)可能會(huì)再派生出更多的子欄目。主場景作為"舞臺(tái)"基礎(chǔ),基本保持自身的內(nèi)容不變,其它"演員"身份的的子類、次子類內(nèi)容根據(jù)需要被導(dǎo)入到主場景內(nèi)。 從技術(shù)方面講,如果你已經(jīng)掌握了不少單個(gè)Flash作品的制作方法,再多了解一些swf文件之間的調(diào)用方法,制作全Flash網(wǎng)站并不會(huì)太復(fù)雜。 參考流程:網(wǎng)站結(jié)構(gòu)規(guī)劃—>Flash場景規(guī)劃—>素材準(zhǔn)備—>分別制作—>整體整合 一、全Flash網(wǎng)站和單個(gè)Flash作品制作的區(qū)別 二、常用技術(shù) 1、重要ActionScript代碼控制 2、Loading的制作 3、文本導(dǎo)入 三、實(shí)例制作剖析 1、本實(shí)例網(wǎng)站結(jié)構(gòu)規(guī)劃 2、首頁場景index.swf的制作 3、次場景Cartoon(200208.swf)的制作 4、二級(jí)次場景(200208_frog01~200208_frog05)制作 5、About中的文本導(dǎo)入 四、注意事項(xiàng) 以上我們通過實(shí)例剖析的方式大略介紹了全Flash網(wǎng)站的基本制作方法,希望給喜歡Flash的朋友們一點(diǎn)實(shí)實(shí)在在的幫助,期望不久以后能看到大家做出的精彩Flash網(wǎng)站!本文Flash網(wǎng)站實(shí)例源文件下載 一、全Flash網(wǎng)站和單個(gè)Flash作品制作的區(qū)別 1、文件結(jié)構(gòu)不同 單個(gè)Flash作品的場景、動(dòng)畫過程及內(nèi)容都在一個(gè)文件內(nèi),而全Flash網(wǎng)站的文件由若干個(gè)文件構(gòu)成,并且可以隨發(fā)展的需要繼續(xù)擴(kuò)展。全Flash網(wǎng)站的文件動(dòng)畫分別在各自的對(duì)應(yīng)文件內(nèi)。通過Action的導(dǎo)入和跳轉(zhuǎn)控制實(shí)現(xiàn)動(dòng)畫效果,由于同時(shí)可以加載多個(gè)SWF文件,它們將重疊在一起顯示在屏幕上。 2、制作思路不同 單個(gè)Flash作品的制作一般都在一個(gè)獨(dú)立的文件內(nèi),計(jì)劃好動(dòng)畫效果隨時(shí)間線的變化或場景的交替變化即可。全Flash網(wǎng)站制作則更需要整體的把握,通過不同文件的切換和控制來實(shí)現(xiàn)全Flash網(wǎng)站的動(dòng)態(tài)效果,要求制作者有明確的思路和良好的制作習(xí)慣。 3、文件播放流程不同 單個(gè)Flash作品通常需要將所以的文件做在一個(gè)文件內(nèi),在觀看效果是必須等文件基本下載完畢才開始播放。但全Flash網(wǎng)站是通過若干個(gè)文件結(jié)合在一起,在時(shí)間流上更符合Flash軟件產(chǎn)品的特性。文件可以做的比較小,通過陸續(xù)載入其它文件更適合Internet的傳播,這樣同時(shí)避免了訪問者因等待時(shí)間過長而放棄瀏覽。 二、常用技術(shù) 1、重要ActionScript代碼控制 這是全Flash網(wǎng)站實(shí)現(xiàn)的關(guān)鍵,尤其是Flash MX新增了很多功能強(qiáng)大的命令,關(guān)于這部分,請大家可以參看看看其它的資料,這里只介紹部分制作全Flash網(wǎng)站需要使用的比較重要的ActionScript函數(shù)。 loadMovieNum("url",level[, variables]) loadMovie("url",level/target[, variables]) 功能說明: 在播放原來加載的影片的同時(shí)將SWF或JPEG文件加載進(jìn)來。 參數(shù)說明: url 要加載的 SWF 或 JPEG 文件的絕對(duì)或相對(duì) URL,不能包含文件夾或磁盤驅(qū)動(dòng)器說明。 level 把swf文件以層的形式載入到Movie里,若載入0層,則載入的swf文件將取代當(dāng)前播放的Movie,。2層高于1層。 Target 可用路徑拾取器取得并替換目標(biāo)MC,載入的電影將擁有目標(biāo)MC的位置、大小和旋轉(zhuǎn)角度等屬性。(個(gè)人認(rèn)為用Target好些,在控制載入.swf位置時(shí)比較方便) variables 可選參數(shù),指定發(fā)送變量所使用的 HTTP 方法(GET/POST),如果沒有則省略此參數(shù)。 層次Level:Flash允許同時(shí)運(yùn)行多個(gè)SWF文件,F(xiàn)lash一旦載入一個(gè)SWF文件,則占據(jù)了一個(gè)"層次",系統(tǒng)默認(rèn)的是_Flash0或_Level0,之后的Movie則按順序放在level0---level16000里。第一個(gè)載入的SWF文件為_Flash0或_Level0,第二個(gè)如果加載到第一層時(shí)的稱為_Flash1或_Level1,依此類推。注意前提是前面載入的文件沒有退出,否則沖掉第一個(gè)SWF文件,第一個(gè)文件也從內(nèi)存中退出。 注意:如果你將外部的Movie加載到Leve0層或者Level0里,那么,原始的Movie就會(huì)被暫時(shí)取代,要再用時(shí)還得重新Load一次,也就是說,一個(gè)Level在一個(gè)時(shí)間里只能有一個(gè)Movie存在。在使用LoadMovie和UnLoadMovie時(shí)必須特別注意Level之間的關(guān)系,否則,當(dāng)你希望在一個(gè)時(shí)間里只播放一個(gè)Movie而Unload掉前一個(gè)Movie時(shí),就會(huì)出現(xiàn)不必要的麻煩。 unloadMovieNum(level) unloadMovie[Num](level/"target") 功能說明: 從 Flash Player 中刪除已加載的影片。 參數(shù)說明: 同上 loadVariables ("url" ,level/"target" [, variables]) 功能說明: 從外部文件中(例如文本文件,或由 CGI 腳本、Active Server Page (ASP)、PHP 或 Perl 腳本生成的文本)讀取數(shù)據(jù),并設(shè)置 Flash Player 級(jí)別或目標(biāo)影片剪輯中變量的值。 參數(shù)說明: url 變量所處位置的絕對(duì)或相對(duì) URL level 指定 Flash Player 中接收這些變量的級(jí)別的整數(shù)。 Target 指向接收所加載變量的影片剪輯的目標(biāo)路徑。 variables 可選參數(shù),指定發(fā)送變量所使用的 HTTP 方法(GET/POST),如果沒有則省略此參數(shù)。 gotoAndPlay(scene, frame) 功能說明: 轉(zhuǎn)到指定場景中指定的幀并從該幀開始播放。如果未指定場景,則播放頭將轉(zhuǎn)到當(dāng)前場景中的指定幀。 參數(shù)說明: scene 轉(zhuǎn)到的場景的名稱。 frame 轉(zhuǎn)到的幀的編號(hào)或標(biāo)簽。 2、Loading的制作 考慮到網(wǎng)絡(luò)傳輸?shù)乃俣?,如果index.swf文件比較大,在它被完全導(dǎo)入以前設(shè)計(jì)一個(gè)Loading引導(dǎo)瀏覽者耐心等待是非常有必要的。同時(shí)設(shè)計(jì)得好的loading在某些時(shí)候還可以為網(wǎng)站起一定的鋪墊作用。 一般的做法是先將loading做成一個(gè)MC,在場景的最后位置設(shè)置標(biāo)簽如end,通過ifFrameLoaded來判斷是否已經(jīng)下載完畢,如果已經(jīng)下載完畢則通過gotoAndPlay控制整個(gè)Flash的播放。 以一個(gè)Loading文件為例,在場景里加入插入MC, ifFrameLoaded("end"){ gotoAndPlay("開始播放的地方"); } 3、文本導(dǎo)入 在我們制作全Flash網(wǎng)站的過程中經(jīng)常遇到一定量的文字內(nèi)容需要體現(xiàn),文本的內(nèi)容表現(xiàn)與上面介紹的流程是一樣的,不同的地方體現(xiàn)最后的表現(xiàn)效果和處理手法還是有些不同。 方法一、文本圖形法 如果文本內(nèi)容不多,有希望將文本內(nèi)容做的比較有動(dòng)態(tài)效果,可以采用此法。將需要文本做成若干個(gè)Flash的元件,在相應(yīng)的位置安排好。文本圖形法的文件載入與上面介紹的處理手法比較類似,原理都差不多。具體動(dòng)態(tài)效果就有待大家自己去考慮,這里就不多介紹。 方法二、直接導(dǎo)入法 文本導(dǎo)入法可以將獨(dú)立的.txt文本文件,通過loadVariables導(dǎo)入到Flash文件內(nèi),修改時(shí)只需要修改txt文本內(nèi)容就可以實(shí)現(xiàn)Flash相關(guān)文件的修改,非常方便。 在文本框?qū)傩灾性O(shè)置Var:變量名(注意這個(gè)變量名)。 為文本框所在的幀添加ActionScript代碼: loadVariables("變量名.txt",""); 編寫一個(gè)純文本文件.txt(文件名隨意),文本開頭為“變量名=”,“=”后面寫上正式的文本內(nèi)容。 三、實(shí)例制作剖析 一般制作流程: 網(wǎng)站結(jié)構(gòu)規(guī)劃—>Flash場景規(guī)劃—>素材準(zhǔn)備—>分別制作—>整體整合 1、本實(shí)例網(wǎng)站結(jié)構(gòu)規(guī)劃 網(wǎng)站欄目:News、About、E-mail、Gallery、Cartoon、Animation 子欄目About:Feiyingis、Member、Relationship、ContactUs 紅線部分構(gòu)成主場景(舞臺(tái)),每個(gè)子欄目在首頁里僅保留名稱,屬性為按鈕。 藍(lán)線部分內(nèi)容為次場景(演員),可以將次場景內(nèi)容做在一個(gè)文件內(nèi),同時(shí)也可以做成若干個(gè)獨(dú)立文件,根據(jù)需要導(dǎo)入到主場景(舞臺(tái))內(nèi)。 2、首頁場景index.swf的制作 全Flash網(wǎng)站由主場景、子場景、次子場景……構(gòu)成。 和制作html網(wǎng)站類似,一般我們會(huì)制作一個(gè)主場景index.swf,主要內(nèi)容包括:長寬比例、背景、欄目導(dǎo)航按鈕、網(wǎng)站名稱等“首頁”信息。最后發(fā)布成一個(gè)html文件,或者自己做一個(gè)html頁面,內(nèi)容就是一個(gè)表格,里面寫上index.swf的嵌入代碼即可。 主場景安排: 藍(lán)色線條部分為網(wǎng)站名稱、版權(quán)等固定信息區(qū),通常所在位置為Flash動(dòng)畫的邊緣位置。 橙色線條內(nèi)容為網(wǎng)站欄目導(dǎo)航按鈕,通常也是固定在某個(gè)區(qū)域。按鈕可以根據(jù)需要做成靜態(tài)或動(dòng)態(tài)效果,甚至可以做成一個(gè)包含MC變化的Button。 綠色線條部分為主場景導(dǎo)入子文件的演示區(qū)域。 在子文件的裝載方面主要用到:LoadMovieNum、UnloadMovieNum兩個(gè)控制函數(shù),請參閱前文重要ActionScript代碼控制。 這里我們以子欄目Cartoon的制作為例。主場景文件index中有一個(gè)按鈕Cartoon,當(dāng)我們點(diǎn)擊Cartoon按鈕時(shí)希望導(dǎo)入cartoon文件夾下的200208.swf文件。所以我們在場景內(nèi)選擇Cartoon按鈕,添加Action代碼: on(release){ loadMovieNum("cartoon/200208.swf",1); unloadMovieNum(2); } 注意這里我們設(shè)置level為1。 3、次場景200208.swf的制作 現(xiàn)在確定Cartoon子欄目需要導(dǎo)入的文件200208.swf,該文件計(jì)劃包含5個(gè)子文件。所以200208.swf文件的界面只包含用于導(dǎo)入5個(gè)獨(dú)立子文件的5個(gè)圖形按鈕和一個(gè)標(biāo)題。 200208.swf 從圖上大家可以看到,200208.swf文件包含5個(gè)屬性為button的小圖標(biāo),分別為Bu_2_frog01到Bu_2_frog05。我們需要的效果是:點(diǎn)擊它們則分別導(dǎo)入相應(yīng)文件200208_frog01.swf到200208_frog05.swf文件。 我們在場景內(nèi)選擇Bu_2_frog01,為這個(gè)按鈕添加ActionScript: on(release){ loadMovieNum("cartoon/200208_frog01.swf",2); } 點(diǎn)擊Bu_2_frog02,為這個(gè)按鈕添加ActionScript: on(release){ loadMovieNum("cartoon/200208_frog02.swf",2); } …… 依次將5個(gè)button分別設(shè)置好相對(duì)應(yīng)的action以便調(diào)用相應(yīng)的文件。 注意:這里我們設(shè)置level為2,是為了保留并區(qū)別主場景1而設(shè)置的導(dǎo)入的層次數(shù),如果需要導(dǎo)入下一級(jí)的層數(shù),則層數(shù)增加為3,依次類推。 4、二級(jí)次場景(200208_frog01~200208_frog05)制作 這里的二級(jí)次場景是與上級(jí)關(guān)聯(lián)的內(nèi)容,是本例中三級(jí)結(jié)構(gòu)中的最后一級(jí)。該級(jí)主要為全Flash網(wǎng)站具體內(nèi)容部分,可以是詳細(xì)的圖片、文字、動(dòng)畫內(nèi)容。這里需要連接的是具體圖片為內(nèi)容,但同樣需要做成與主場景比例同等的swf文件。例如: 200208_frog01 200208_frog02 該場景是最底層場景,為主體內(nèi)容顯示部分,具體動(dòng)畫效果大家可以根據(jù)需要做更深入。注意要在場景最后一幀處加入停止ActionScript代碼:stop();這樣可以停止場景動(dòng)畫的循環(huán)動(dòng)作。 完整導(dǎo)入到主場景內(nèi)的效果 5、About中的文本導(dǎo)入 查看本例的About子欄目,在文件index.fla里設(shè)置About按鈕的action: on(release){ loadMovieNum("aboutus.swf",1); unloadMovieNum(2); } 在aboutus.fla文件中做好顯示文本的文本框,文本框?qū)傩栽O(shè)置為多行(Multiline),Var:aboutus(注意這個(gè)變量名)。 為文本框所在的幀加ActionScript代碼: loadVariables("aboutus.txt",""); 在aboutus.swf文件所屬目錄下編寫一個(gè)純文本文件about.txt,文本開頭為“aboutus=”,“=”后面寫上正式的文本內(nèi)容。 將文本文件完整導(dǎo)入到主場景內(nèi)的效果 四、注意事項(xiàng) 1、注意所有子文件的長、寬屬性 全Flash網(wǎng)站從畫面層次來看,非常類似Photoshop的層結(jié)構(gòu),我們可以把每個(gè)子場景看做為一個(gè)層文件,子文件是在背景的長寬范圍內(nèi)出現(xiàn)。為了方便定位,我們可以讓子文件與主場景保持統(tǒng)一的長寬比例,這樣非常便于版面安排。否則就必須用setProperty語句小心控制它們的位置。 2、發(fā)布文件時(shí)注意將html選項(xiàng)發(fā)布為透明模式 需要將每個(gè)子文件發(fā)布為透明模式的原因是不能讓子文件帶有背景底色,由于子文件的長寬比例與主場景基本是一致的,如果子文件帶有底色,就會(huì)遮蓋主場景的內(nèi)容。 設(shè)置方法:在發(fā)布設(shè)置里勾選html選項(xiàng),在html面板里選擇windowsmode:TransparentWindowless,如圖。 3、使用文本導(dǎo)入時(shí),注意文本文件開頭的內(nèi)容必須是“與文本框?qū)傩灾蠽ar定義名相同的字符串=正文”。另外需要導(dǎo)入文本的swf文件與被導(dǎo)入的txt文本文件最好在同一目錄內(nèi)。 4、注意仔細(xì)檢查文件之間的調(diào)用是否正確,避免出現(xiàn)“死鏈接”。 |
|