Director與Flash在多媒體系統(tǒng)開(kāi)發(fā)中的差異分析_第1頁(yè)
Director與Flash在多媒體系統(tǒng)開(kāi)發(fā)中的差異分析_第2頁(yè)
Director與Flash在多媒體系統(tǒng)開(kāi)發(fā)中的差異分析_第3頁(yè)
Director與Flash在多媒體系統(tǒng)開(kāi)發(fā)中的差異分析_第4頁(yè)
Director與Flash在多媒體系統(tǒng)開(kāi)發(fā)中的差異分析_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 Director與Flash在多媒體系統(tǒng)開(kāi)發(fā)中的差異分析摘要:director和flash兩種軟件都是在多媒體系統(tǒng)開(kāi)發(fā)領(lǐng)域常用的工具,但是二者在開(kāi)發(fā)過(guò)程中如何更好地協(xié)調(diào)配合使用卻是一個(gè)值得關(guān)注的問(wèn)題。本文介紹了兩種多媒體開(kāi)發(fā)工具director和flash的發(fā)展歷史,討論了二者在交互控制、數(shù)據(jù)庫(kù)綁定等方面的差異。關(guān)鍵詞:director flash 多媒體 系統(tǒng) 0 引言 director、flash這兩種多媒體開(kāi)發(fā)工具都是macromedia公司在多媒體開(kāi)發(fā)領(lǐng)域的拳頭產(chǎn)品,它們與另一種開(kāi)發(fā)工具authoware并稱為“多媒體三劍客”,然而authoware由于其本身交互語(yǔ)言功能的限制,以及

2、對(duì)視頻、音頻等多媒體素材的兼容上容易出錯(cuò),當(dāng)macromedia公司被adobe收購(gòu)之后,一直沒(méi)有官方的新版本出現(xiàn),逐漸被冷落。而director與flash卻依然如日中天,2008年初adobe director11與adobe shockwave player上市,而flash更是有:adobe flash 8 、adobe flashcs3、以及adobe flash player8、9等多個(gè)版本在adobe名下發(fā)布。本文將對(duì)director 和flash 在開(kāi)發(fā)應(yīng)用上的異同點(diǎn)進(jìn)行探討,使得用戶能夠充分發(fā)揮二者的優(yōu)勢(shì)并加以合理利用,從而提高多媒體系統(tǒng)開(kāi)發(fā)的效率。 1 兩種開(kāi)發(fā)工具的開(kāi)發(fā)方

3、向 當(dāng)前,許多www的站點(diǎn)以flash作為系統(tǒng)開(kāi)發(fā)的重要工具,制作諸如導(dǎo)航、菜單、公告等頁(yè)面元素,另外,隨著概念的提出,flash的“孿生兄弟”flex成為了新興的ria(富互聯(lián)網(wǎng)應(yīng)用程序)系統(tǒng)的一個(gè)重要開(kāi)發(fā)工具。LoCalHOSt但是,有得必有失,flash因其小巧很快在互聯(lián)網(wǎng)走紅,但它所支持的多媒體資源有限,比如無(wú)法支持3d渲染,無(wú)法流暢支持高質(zhì)量視頻,這就使得系統(tǒng)的表現(xiàn)力大打折扣,因此,客觀地說(shuō),flash開(kāi)發(fā)的系統(tǒng)更適用于網(wǎng)絡(luò)平臺(tái),而要制作表現(xiàn)力更加強(qiáng)大、信息量更加豐富的桌面多媒體系統(tǒng),還是要用director來(lái)實(shí)現(xiàn),director憑借其海量的xtras外掛程序的支持,優(yōu)秀的內(nèi)存管理

4、調(diào)度能力,以及對(duì)3d資源的強(qiáng)力整合,能夠非常輕松地實(shí)現(xiàn)復(fù)雜效果的設(shè)計(jì)過(guò)程,然而,director的缺點(diǎn)也很明顯,它所生成的發(fā)布文件以及所需的shockwave播放插件本身要比f(wàn)lash大得多,因此雖然它支持網(wǎng)絡(luò)發(fā)布的模式,但是它并不適合像flash所創(chuàng)建的系統(tǒng)那樣以b/s模式的姿態(tài)出現(xiàn),受限于網(wǎng)絡(luò)帶寬,沒(méi)有用戶愿意花費(fèi)大量的時(shí)間去在瀏覽器上等待一個(gè)未知數(shù)。故而director更多的面向的是本地的產(chǎn)品展示或者c/s模式的多媒體系統(tǒng)客戶端。 2 交互控制 lingo、javascript與actionscript director和flash都提供了功能強(qiáng)大的交互語(yǔ)言,director中可以采用l

5、ingo與javascript兩種語(yǔ)言,flash中只提供了actionscript語(yǔ)言。相比較,director的兼容性更好些,給用戶的選擇余地更多,因?yàn)閖avascript擁有更多的用戶基礎(chǔ),很多人在網(wǎng)站開(kāi)發(fā)等相關(guān)項(xiàng)目中都或多或少地接觸過(guò)它。而lingo語(yǔ)言是一個(gè)典型的事件驅(qū)動(dòng)編程語(yǔ)言,非常適合于多媒體交互系統(tǒng)的開(kāi)發(fā),但是它的用戶基礎(chǔ)相對(duì)薄弱,一般只有涉及director多媒體開(kāi)發(fā)才會(huì)使用到,所以可能一些用戶使用起來(lái)需要一定的時(shí)間來(lái)上手。對(duì)于flash中的actionscript語(yǔ)言,最早出現(xiàn)在flash 3中的actionscript 語(yǔ)法冗長(zhǎng),主要的應(yīng)用是圍繞著幀的導(dǎo)航和鼠標(biāo)的交互.這

6、種狀況一直保持到flash 5. 到flash 5版本時(shí)actionscript已經(jīng)很象javascript了。它提供了很強(qiáng)的功能和為變量的傳輸提供了點(diǎn)語(yǔ)法。actionscript同時(shí)也變成了一種prototyped語(yǔ)言,允許類似于在javscript中的簡(jiǎn)單的oop功能。actionscript的最新版本是,它不再只局限于制作flash特效,更體現(xiàn)在對(duì)基于flex的ria系統(tǒng)的支持上,這些都使得actionscript的地位與日俱增。 director與flash之間的信息傳遞方式 無(wú)論是director中的lingo,或是flash中的actionscript,它們都提供了與對(duì)方的接口,

7、實(shí)現(xiàn)director和flash的相互控制。 flash to director的信息傳遞 在flash中可以通過(guò)geturl函數(shù)直接調(diào)用director的lingo命令,如 on(rollover) geturl(“l(fā)ingo:cursor?280“); on(rollout) geturl(“l(fā)ingo:cursor?0“); 將上面的actionscript加在flash按鈕上,然后將其導(dǎo)入到director中就能實(shí)現(xiàn)光標(biāo)的變換了。 使用flash中的event命令,如:geturl?(“event:readtxt,”,”dairy”) 上面的actionscript可以執(zhí)行direct

8、or中的影片腳本中的readtxt函數(shù),并傳遞“”和“dairy”兩個(gè)參數(shù)給readtxt函數(shù)。 director to flash的信息傳遞: 在director中控制flash演員播放、停止等命令 sprite(123下一頁(yè) flashspritenum).play()播放flash演員 sprite(flashspritenum).stop()停止flash演員的播放 類似的函數(shù)有rewind()、gotoframe()等等,其詳細(xì)的用法見(jiàn)前面的“控制flash”。 使用getvariable函數(shù)來(lái)直接獲取flash演員中的值 getvariable(sprite flashsprite

9、num,“password”) 獲取位于通道flashspritenum中的flash演員中變量password的值 使用setvariable函數(shù)來(lái)設(shè)置flash演員中的值 setvariable(sprite flashspritenum,“password”,“admin”) 將位于通道flashspritenum中flash演員中的password變量的值設(shè)置為admin 3 數(shù)據(jù)庫(kù)綁定 客觀地說(shuō),無(wú)論flash還是director它們對(duì)數(shù)據(jù)庫(kù)的支持都十分有限, 以下對(duì)他們的連接數(shù)據(jù)庫(kù)方式進(jìn)行簡(jiǎn)要探討: director的數(shù)據(jù)庫(kù)常用連接方式: 使用列表(list) 每種語(yǔ)言都有存儲(chǔ)一組

10、數(shù)據(jù)的能力。在有些語(yǔ)言中,稱為數(shù)組。在director的lingo里,叫做列表(list)。列表可以分成兩類:線性列表(1inear list)和屬性列表(property list)。線性列表是指包含在單個(gè)變量里的一串?dāng)?shù)字、字符串或數(shù)據(jù)。如包含人名/電話號(hào)碼的線性列表例子: mylist=“張三”,”85667788”,“李四”,”56453336”,“王二”,”86879996” 屬性列表里的每個(gè)元素都包含一個(gè)屬性名稱和屬性值。下面是一個(gè)典型的屬性列表: mylist=#name:”張三”,#phone:”85667788”,#employesince:2000 在lingo中盡管沒(méi)有專門(mén)

11、的數(shù)據(jù)庫(kù)操作指令,但對(duì)于列表,lingo提供了管理和操縱列表數(shù)據(jù)的命令。它們能在列表的開(kāi)始或特定位置添加數(shù)據(jù)在列表的末尾增添數(shù)據(jù)從列表中刪除數(shù)據(jù)從列表的特定位置訪問(wèn)數(shù)據(jù)編輯列表中存儲(chǔ)的數(shù)據(jù)對(duì)列表中的數(shù)據(jù)排序計(jì)算列表中的數(shù)據(jù)項(xiàng)的數(shù)量。因此,利用列表 list可以模擬實(shí)現(xiàn)數(shù)據(jù)庫(kù)的功能。 應(yīng)用第三方專業(yè)的數(shù)據(jù)庫(kù)插件(xtra) 針對(duì)lingo語(yǔ)言在數(shù)據(jù)庫(kù)操作方面的弱點(diǎn)。許多第三方廠商為director專門(mén)設(shè)計(jì)了擴(kuò)展其數(shù)據(jù)庫(kù)功能的插件(xtra)。它們的執(zhí)行效率很高,封裝性好,安裝方便,有的可以跨平臺(tái)使用。這些插件在director和其暫時(shí)無(wú)法實(shí)現(xiàn)的功能之間架起了一座橋梁,為數(shù)據(jù)庫(kù)功能的實(shí)現(xiàn)鋪設(shè)了寬闊

12、的大道,典型的插件主要有國(guó)外的datagrip、easydb、v12以及國(guó)內(nèi)自主開(kāi)發(fā)的odbc、bitdbreader等。 flash中的數(shù)據(jù)庫(kù)常用連接方式: 利用asp實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接 假如我們要用flash做一個(gè)登陸界面,接受用戶id號(hào),然后提交數(shù)據(jù)庫(kù)查詢,再返回其姓名,我們來(lái)看下如何實(shí)現(xiàn)。假設(shè)flash端有一個(gè)按鈕,id號(hào)用變量”input”存儲(chǔ),返回的姓名賦給變量”output”。那么flash端的as代碼如下: on(release)load variables(“searchasp?input=“,0,vars=get) 這樣,當(dāng)在動(dòng)畫(huà)過(guò)程中這個(gè)按鈕被點(diǎn)擊并釋放后,input變量將被

13、傳遞給searchasp文件,傳遞方式為get。下面看一下searchasp如何接受并返回處理的結(jié)果: dim userid /定義變量 userid=(“input”)/接收變量 set conn=-(“) /定義連接對(duì)象 set recordset=(“) /定義記錄對(duì)象 “user” /打開(kāi)數(shù)據(jù)庫(kù)連接的dsn /數(shù)據(jù)庫(kù)處理程序 (“output=“+(“查詢結(jié)果”) /從asp向flash返回結(jié)果 上面使用函數(shù)(variablenarne)來(lái)保證傳遞回去的變量是按照url格式編碼的,這樣便以最簡(jiǎn)單的方式實(shí)現(xiàn)了flash和數(shù)據(jù)庫(kù)的連接。 其他方式 除了前面介紹的兩種方式外,flash還可以通過(guò)類似于asp的php、jsp腳本以及xml數(shù)據(jù)島和基于socket的中間件技術(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接,由于文章篇幅的關(guān)系,此處就不一一贅述了。 4 結(jié)束語(yǔ) 計(jì)算機(jī)多媒體技術(shù)是上世紀(jì)90年代興起的一個(gè)計(jì)算機(jī)學(xué)科的重要分支,在未來(lái)的很長(zhǎng)的一段時(shí)間內(nèi),都會(huì)吸引很多技術(shù)人員投身其中,進(jìn)行各種多媒體系統(tǒng)的設(shè)計(jì)制作。隨之而來(lái)的是多媒體開(kāi)發(fā)工具種類的進(jìn)一步豐富,界面的進(jìn)一步友好,而如何根據(jù)不同系統(tǒng)的特點(diǎn)選擇適當(dāng)?shù)拈_(kāi)發(fā)工具是一個(gè)值得眾多開(kāi)發(fā)人員思考的問(wèn)題。本文拋磚引玉,希望能夠?qū)氖露嗝襟w系統(tǒng)開(kāi)發(fā)的朋友們起到一定的借鑒作用。參考文獻(xiàn):1謝俊.di

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論