Flash片頭加載loading的基礎(chǔ)討論_Flash教程
推薦:Flash游戲制作:簡(jiǎn)單射擊游戲教程(Fla源文件)本游戲教程涉及自定義鼠標(biāo),鼠標(biāo)跟隨,鼠標(biāo)事件,簡(jiǎn)單動(dòng)畫,文本框等方面,最終成品如下,游戲難度變化:假如你感愛(ài)好,先把所有源文件下載,然后對(duì)照文件看以
很早之前我曾經(jīng)說(shuō)過(guò)“沒(méi)有l(wèi)oading的flash,不是完整的flash”。我想那個(gè)句話可能偏激了。因?yàn)橛袝r(shí)候一些不到10k的flash,確實(shí)不需要做什么loading。但我始終認(rèn)為,做一個(gè)優(yōu)秀的loading是衡量一個(gè)flasher水準(zhǔn)、甚至態(tài)度的,因?yàn)閘oading是唯一一個(gè)你不會(huì)多看而所有用戶、客戶會(huì)看的東西,所以你對(duì)loading的重視程度,甚至可以反襯你這個(gè)flasher的職業(yè)道德。我熟悉不少做設(shè)計(jì)為主的朋友,很多都是自己找一個(gè)現(xiàn)成的loading,然后每次去套用。我個(gè)人認(rèn)為這是很不好的習(xí)慣。并不是說(shuō)我不提倡代碼、元件的重用,而是我覺(jué)得對(duì)于loading這種東西,套多了是要出問(wèn)題的。我強(qiáng)烈建議那些已經(jīng)達(dá)到可以修改人家loading水平的flasher看看我的東西。
轉(zhuǎn)載請(qǐng)保留原文地址:http://www.awflasher.com/blog/?id=444
這個(gè)討論共分為三部分:
1、基礎(chǔ)
2、MovieClipLoader相關(guān)討論(較深入)
3、V2組件相關(guān)問(wèn)題
今天我們主要介紹Flash的loading制作的基礎(chǔ)。
首先要感激Macromedia的大聰明,提供了很好的兩個(gè)函數(shù)使我們可以做出完美的loading,那就是getBytesLoaded和getBytesTotal。請(qǐng)不要再用你改來(lái)改去改了兩三年的那個(gè)什么getFrameLoaded什么什么了,我都記不清楚怎么拼了。我只想說(shuō),F(xiàn)rame的觀念將在真正的Interactive-Design中淡化。更別提什么Scene,那是Flash的敗筆!
那么loading如何工作呢?我們?nèi)绾卫眠@兩個(gè)函數(shù)呢?這里要提到一個(gè)重要的概念。就是間隔調(diào)用。間隔調(diào)用有多種方式,下面列舉出來(lái),并列舉出其在loading制作中的地位和用法,歡迎補(bǔ)充:
·setInterval方式
寫法:
{
var p = getBytesLoaded()/getBytesTotal();
if (p==1)
{
clearInterval(intervalID); // 釋放間隔調(diào)用
gotoAndPlay(someFrame); // 開(kāi)始播放
}
}
var interval = 30; // 這個(gè)數(shù)值是刷新頻率
var intervalID = setInterval(loadCheck,interval);
我個(gè)人并不推薦初學(xué)者用這種寫法。因?yàn)楹芏嗳溯p易忽視clearInterval,而這個(gè)東西被忽視掉,是很恐怖的!假如你的setInterval沒(méi)有給及時(shí)移除,意味著你將在整個(gè)swf的播放過(guò)程中增加一個(gè)沒(méi)有必要的負(fù)擔(dān)!
而且這種方法很不適合控制MoiveClip的狀況(因?yàn)槌鯇W(xué)者會(huì)發(fā)現(xiàn)MC的路徑是個(gè)大問(wèn)題,而loadCheck本身就是個(gè)函數(shù),還是被setInterval調(diào)用的,要在loadCheck中指一個(gè)路徑出來(lái),挺麻煩的,你不要指望_root,那樣會(huì)讓你的程序不規(guī)范;也不要指望this,因?yàn)樵诤瘮?shù)中用this似乎不太理想;最好什么都不寫,但往往你不敢不寫),進(jìn)而做出更好的效果。
·onEnterFrame方式
我最喜歡的就是這種方法了。比較方便、直觀。因?yàn)橥覀兪且靡粋(gè)MC體現(xiàn)一個(gè)loading的進(jìn)度,比如,一個(gè)進(jìn)度條,或者更有創(chuàng)意的東西,只有你不能想到的,沒(méi)有你不能做到的。
那么究竟如何用呢。首先,把創(chuàng)意定好。然后給你的MC一個(gè)實(shí)例名字,比如叫做loader_mc。這時(shí)候在timeline上寫代碼,記住,是timeline而不是MC上。因?yàn)檫@樣便于代碼統(tǒng)一、便于路徑統(tǒng)一、便于治理和尋找。別為了省幾個(gè)字母就把代碼通通搬到button,mc上面去,然后一個(gè)on(press)了事。除非你是在敷衍你的作品;或者你是在為了交作業(yè)。
{
var getTar:MovieClip = this._parent;
var p = getTar.getBytesLoaded()/getTar.getBytesTotal();
trace(p);
if(p==1)
{
this.onEnterFrame = null;
gotoAndPlay(someFrame); // 開(kāi)始播放
}
}
就這么簡(jiǎn)單,記住,在MC的事件函數(shù)體內(nèi)部引用MC,永遠(yuǎn)是一件很快的事情。因?yàn)閠his就可以指向這個(gè)MC本身,通過(guò)諸如this._parent之類的方法,可以找到你所有的MC!
·直接依靠于timeline的循環(huán)方式
這是非常非常非常古老的方式,就不多介紹了。
以上算是比較簡(jiǎn)單的。還有兩個(gè)比較輕易出問(wèn)題的loading技術(shù),就是MovieClipLoader、含有多種V2組件的Loader。下一節(jié)我們接著介紹。
分享:Flash初學(xué)者教程:簡(jiǎn)單制作圖形變換寫個(gè)簡(jiǎn)單的教程,一起學(xué)習(xí)下吧...新建一個(gè)空白的FLASH文檔,把背景色改為黑色。圖1:按CtrlF8新建一個(gè)景片剪輯。圖2:在景片剪輯中,選擇文本工具,在舞臺(tái)上
Flash教程Rss訂閱網(wǎng)站制作教程搜索
Flash教程推薦
- Flash 動(dòng)作腳本之:資料速查(2)
- Flash MX2004入門與進(jìn)階實(shí)例——文字和組件(5)
- Flash制作跟隨鼠標(biāo)扇形旋轉(zhuǎn)文字視覺(jué)特效
- Flash實(shí)例教程:制作有趣的拍照效果動(dòng)畫
- 土人AS入門教程語(yǔ)法篇
- Flash MX2004入門與進(jìn)階實(shí)例——?jiǎng)幼髂_本進(jìn)階(1)
- Flash入門實(shí)例:制作傳統(tǒng)風(fēng)格卷簾動(dòng)畫
- 限制Flash在指定域名/網(wǎng)址中播放
- 一個(gè)FLASHER的艱辛路程與困惑
- 水紋三維設(shè)計(jì)效果的特效字(5)
猜你也喜歡看這些
- Flash 8經(jīng)典動(dòng)畫設(shè)計(jì)實(shí)錄
- Flash CS4中文版入門與提高
- Flash卡通動(dòng)畫設(shè)計(jì)教程下載
- 中國(guó)閃客原創(chuàng)爬行榜Flash TOP10動(dòng)畫風(fēng)暴 隨書(shū)光盤 2CD
- 新東方任汝芬考研政治大綱解析班flash視頻及其他
- Flash CS3動(dòng)畫設(shè)計(jì)入門提高與技巧(光盤).
- Flash 8 中文版從入門到精通隨書(shū)光盤
- flash動(dòng)作編程教程
- Flash as3.0視頻教程之組件編程
- Flash CS4動(dòng)畫設(shè)計(jì)與制作300例
- 相關(guān)鏈接:
- 教程說(shuō)明:
Flash教程-Flash片頭加載loading的基礎(chǔ)討論
。