精確的Loading設(shè)計(jì)
上述的哪個(gè)Loading程序有一些比較簡單,雖然它已經(jīng)達(dá)到了預(yù)載的效果,但是對于要求比較高的朋友可能就不能滿足了。哪么請看圖4-8,這個(gè)預(yù)載動畫將使用到比較多的函數(shù),使動畫預(yù)載看起來更加的人性化。
圖4-8 高級的Loading程序界面
制作過程:
步驟一、打開剛才我們設(shè)計(jì)的Loading動畫。這個(gè)Loading程序?qū)⑹窃谏鲜鯨oading的基礎(chǔ)上修改而成的。
步驟二、使用文字工具,并且使用Window|Panels|Character命令,打開Character字符面板,將字號設(shè)置為25,字色為黑色。如圖4-9所示。
圖4-9 Character面板的設(shè)置
步驟三、將文字按圖4-8這樣式輸入在界面里。然后打開Window|Panels|Align命令,打開Align對齊面板。
步驟四、使用其中的對齊方式將文字對齊成圖4-8之樣式。
步驟五、點(diǎn)擊文字工具,在總字節(jié)的文字后面用鼠標(biāo)拖出一個(gè)文本框,注意用調(diào)節(jié)點(diǎn)調(diào)節(jié)文本框的寬度。然后打開Window|Panels|Text Options命令打開Text Options文本屬性面板,在下拉菜單中選擇Dynamic Text打開動態(tài)文本設(shè)置框。
步驟六、在動態(tài)文本框的Variable項(xiàng)輸入這個(gè)文本框的變量為zbye,如圖4-10所示。
圖4-10 動態(tài)文本面板中設(shè)置動態(tài)文本變量
步驟七、用同樣的方法在繪制七個(gè)動態(tài)文本框在各字符的后面。已經(jīng)下載字節(jié)后面的字段變量為yby,總幀數(shù)的為zfrm,已下載幀數(shù)的是yfrm,需要的時(shí)間后面變量名為xtim,已用時(shí)間的為ytim,在進(jìn)度條下方的下載進(jìn)度變量為yload。
步驟八、設(shè)置完畢開始進(jìn)行程序設(shè)計(jì)。打開第二幀的Action面板,你可以看到我們剛才設(shè)計(jì)的程序。在這個(gè)程序中有很多的內(nèi)容無需改變,只要再添加一些程序就可以了。
步驟九、我們將Setproperty("_root.loading",_xscale,(_framesloaded/_totalframes)*100這句用鼠標(biāo)拖動上移一行,在指定區(qū)的Actions指令集中選擇Set Variable指令。
步驟十、在打開的變量輸入框中,Variable項(xiàng)填寫總幀數(shù)的字段變量zby,在Value欄中輸入代碼_root.getbytestotal(),勾選后面的Expression單選框。
圖4-11 變量輸入框
步驟十一、用同樣的方法輸入其它變量。yby=_root.getbytesloaded()。 步驟十二、zfrm = _root._totalframes。 步驟十三、yfrm = _root._framesloaded。 步驟十四、ytim=gettime()/1000 + "秒"。 步驟十五、xtim = int(zby-yby)/yby*tim) + "秒"。 步驟十六、yload = _framesloaded/_totalframes*100。 步驟十七、整個(gè)程序輸入結(jié)束。對照參考圖4-12。
圖4-12 高級Loading的完整程序
程序解讀:
這前幾行程序基本上不用解讀,哪些都是Action中所擁有的函數(shù),只要將本章開始時(shí)的函數(shù)學(xué)習(xí)好,把它們賦值給變量就可以了。
第十行,用了一個(gè)表達(dá)式來獲得了還需要的時(shí)間變量值?傋止(jié)減去已經(jīng)下載的字節(jié)的值除以已下載的字節(jié)再乘以已經(jīng)使用的時(shí)間。
第十一行,用已經(jīng)下載的幀數(shù)除以總幀數(shù)再乘以100得到下載進(jìn)度,其實(shí)這行程序還可以變化為yfrm/zfrm*100。
知識要點(diǎn):
高級Loading其實(shí)制作起來也并不復(fù)雜,你可以通過對函數(shù)的了解來做到。另外這里有一個(gè)概念,getbytesloaded和另外幾個(gè)函數(shù)都是Movie Clip的函數(shù),為什么也可以在場景中使用呢?其實(shí)你可以把場景看成是一個(gè)大的Movie Clip,很多電影剪輯的函數(shù)都可以使用在場景中,包括gettimer()。而動態(tài)文本變量正是去顯示這些函數(shù)的數(shù)值的,其實(shí)在Loading中還有一個(gè)概念,就是利用幀循環(huán)也可以達(dá)到循環(huán)效果,與一般的編程不同的是Flash可以使用幀循環(huán)去達(dá)到一些效果,有時(shí)候因?yàn)閹h(huán)的時(shí)間特性,做出的循環(huán)比用while等循環(huán)語句構(gòu)造出更加意想不到的效果。學(xué)習(xí)好這些函數(shù)正是高級Loading制作的關(guān)鍵。
出處:藍(lán)色理想
責(zé)任編輯:qhwa
上一頁 簡單的loading 設(shè)計(jì) 下一頁 趣味的loading 設(shè)計(jì)
◎進(jìn)入論壇Flash專欄版塊參加討論
|