




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄PAGEPAGE2目錄摘要 1第一章綜述 31.1虛擬現(xiàn)實(shí)技術(shù) 31.2虛擬現(xiàn)實(shí)建模語(yǔ)言 31.3VRML的發(fā)展史 41.4VRML的工作原理 51.5VRML的功能及應(yīng)用 51.6VRML當(dāng)前難題與前景 7第二章可行性分析 82.1VRML軟硬件平臺(tái)分析 82.1.1軟件平臺(tái)分析 82.1.2硬件平臺(tái)分析 82.2經(jīng)濟(jì)可行性和操作可行性 82.3國(guó)內(nèi)外解決問(wèn)題的方法和技術(shù)路線 9第三章VRML瀏覽器和制作工具 103.1VRML瀏覽器介紹 103.2.1CosmoPlayer瀏覽器 103.2.2Cortona瀏覽器 113.2VRML設(shè)計(jì)工具介紹 123.2.1最簡(jiǎn)單的設(shè)計(jì)工具——NotePad 123.2.2公認(rèn)的最佳編輯器——VRMLPad 123.2.3強(qiáng)大的三維編輯器——3DMAX 133.2.4所見(jiàn)機(jī)所得的編輯器——CosmoWorld 153.3利用JavaScript進(jìn)行設(shè)計(jì) 16第四章系統(tǒng)設(shè)計(jì) 174.1故事梗概設(shè)計(jì) 174.2虛擬場(chǎng)景的功能 174.3建立對(duì)象集 174.4建立對(duì)象 174.5物體的基本造型 174.6虛擬場(chǎng)景的要求 18第五章詳細(xì)設(shè)計(jì) 195.1對(duì)基本形體的設(shè)計(jì) 195.2自定義節(jié)點(diǎn)設(shè)計(jì) 205.3動(dòng)畫(huà)設(shè)計(jì) 215.4 腳本設(shè)計(jì) 225.5多媒體設(shè)計(jì) 235.6交互設(shè)計(jì) 265.6.1SphereSensor(圓柱傳感器)節(jié)點(diǎn)的應(yīng)用 265.6.2利用TouchSensor(觸摸傳感器)以及Switch節(jié)點(diǎn)切換場(chǎng)景 275.7光源設(shè)計(jì) 285.8紋理效果 305.8.1產(chǎn)生圖片紋理 305.8.2產(chǎn)生影像紋理 305.9背景設(shè)計(jì) 315.10導(dǎo)航設(shè)計(jì) 315.11利用Inline節(jié)點(diǎn)和LOD節(jié)點(diǎn)從外部調(diào)入VRML程序 325.12利用3DMAX設(shè)計(jì)型體 325.12.1利用3DMAX進(jìn)行型體設(shè)計(jì) 325.12.2利用3DMAX進(jìn)行導(dǎo)入/導(dǎo)出 335.13利用Vtext進(jìn)行文字設(shè)計(jì) 355.14利用CosmoWorld進(jìn)行系統(tǒng)合成和設(shè)計(jì) 355.15優(yōu)化和測(cè)試 36第六章總結(jié) 376.1項(xiàng)目總結(jié) 376.1.1問(wèn)題及關(guān)鍵技術(shù) 376.1.2解決方法 386.1.3進(jìn)一步研究思路 396.2畢業(yè)設(shè)計(jì)總結(jié) 396.3致謝 40附錄:中英文對(duì)照翻譯 41參考資料 46摘要PAGE47實(shí)現(xiàn)基于VRML的虛擬現(xiàn)實(shí)場(chǎng)景摘要VR技術(shù)與Internet技術(shù)的結(jié)合產(chǎn)生了VRML(虛擬現(xiàn)實(shí)建模語(yǔ)言),它是描述交互式的3D對(duì)象和世界的一種文件格式,可以與WWW一起使用,用來(lái)實(shí)現(xiàn)一個(gè)通過(guò)全球互聯(lián)網(wǎng)和WWW的超鏈接而形成的虛擬世界。VRML作為實(shí)際的標(biāo)準(zhǔn)已經(jīng)出現(xiàn)。本文介紹了第二代WWW技術(shù)核心—VRML語(yǔ)言及其特性、文件創(chuàng)建方法、應(yīng)用、發(fā)展前景和瀏覽器等。在簡(jiǎn)要介紹VRML的基礎(chǔ)上,詳細(xì)論述了VRML的各種開(kāi)發(fā)工具,VRML技術(shù)的JAVA支持,以及一個(gè)虛擬現(xiàn)實(shí)場(chǎng)景的設(shè)計(jì)過(guò)程。本文用較大篇幅講述了VRML虛擬場(chǎng)景中場(chǎng)景的設(shè)計(jì)。從最簡(jiǎn)單的虛擬場(chǎng)景構(gòu)造到復(fù)雜型體的設(shè)計(jì);從一個(gè)虛擬場(chǎng)景的動(dòng)畫(huà)設(shè)計(jì)到場(chǎng)景中某些實(shí)體的交互式控制,以及一些紋理、背景和光源方面的設(shè)計(jì)。文章還對(duì)怎樣利用強(qiáng)大的三維立體設(shè)計(jì)器3DMAX來(lái)設(shè)計(jì)場(chǎng)景進(jìn)行了舉例描述。最后對(duì)項(xiàng)目進(jìn)行了總結(jié),描述了構(gòu)造虛擬場(chǎng)景的關(guān)鍵技術(shù),以及一些解決方案和進(jìn)一步研究的思路。關(guān)鍵詞:虛擬現(xiàn)實(shí)建模語(yǔ)言、場(chǎng)景、JAVA、3DMAXTheRealizationofVirtualRealitySceneBasedonVRMLAbstractThecombinationofVRandInternetdevelopsVRML(theVirtualRealityModelingLanguage).Itisafileformatfordescribinginteractive3Dobjectsandworlds.VRMLisusedtoachieveavirtualworldwithWWWthroughInternetandhyperlinkofWWW.Ithasemergedasthedefactostandard.ThearticleintroducesanewlanguageVRML,whichisthecoretechnologyofthesecondgenerationWWW,anddiscussesitscharacteristics,programming,application,perspective,browsersandetc.BasedonintroducingbrieflyVRML,itdiscussesindetailthecreatingtools,thesupportofJAVAinVRMLandtheprocessofdesigningavirtualrealityscene.Inthisthesis,itdiscussesthedesignofthesceneinvirtualrealitysceneofVRMLwithmuchmorelength,whichisfromthesimplestvirtualscenetocomplexshapesandfromthecartoonofthevirtualscenetointeractivecontrolsofsomeentity.Italsodescribessomedesignoftexture,backgroundandlight.Inthethesis,someexamplesaregiventoexplainhowtouse3DMAXtocreatescenes.Finally,thisprojectisconcludedanddescribecrucialtechniquesofconstructingvirtualscene,alsoputforwardsomeprojectswhichistoberesolvedandthemoreresearchthoughtinthefuture.Keywords:VirtualRealityModelingLanguage(VRML);scene;JAVA;3DMAX第一章:綜述第一章綜述1.1虛擬現(xiàn)實(shí)技術(shù)虛擬現(xiàn)實(shí)技術(shù)(VirtualReality,就是大家熟悉的VR),又稱為靈境技術(shù),是20世紀(jì)末發(fā)展起來(lái)的一門(mén)涉及眾多學(xué)科的高新技術(shù)。它集計(jì)算機(jī)技術(shù)、傳感與測(cè)量技術(shù)、仿真技術(shù)、微電子技術(shù)于一體。而理想中的虛擬現(xiàn)實(shí)技術(shù)是利用這些方面的技術(shù),通過(guò)計(jì)算機(jī)創(chuàng)建一種虛擬環(huán)境(VirtualEnvironment),通過(guò)視覺(jué)、聽(tīng)覺(jué)、觸覺(jué)、味覺(jué)、嗅覺(jué)等作用,使用戶產(chǎn)生和現(xiàn)實(shí)中一樣的感覺(jué),這樣用戶就會(huì)產(chǎn)生身臨其境的感覺(jué),并可實(shí)現(xiàn)用戶與該環(huán)境直接進(jìn)行交互。可以說(shuō)一個(gè)好的虛擬現(xiàn)實(shí)環(huán)境是由包括計(jì)算機(jī)圖形學(xué)、圖像處理、模式識(shí)別、多傳感器、語(yǔ)音處理、網(wǎng)絡(luò)等技術(shù)所構(gòu)成的大型綜合集成環(huán)境。隨著硬件技術(shù)及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,使得虛擬現(xiàn)實(shí)技術(shù)在Internet上的實(shí)現(xiàn)成可能,網(wǎng)絡(luò)的寬帶和計(jì)算機(jī)高效的3D運(yùn)算能力,都已經(jīng)使網(wǎng)上的虛擬現(xiàn)實(shí)技術(shù)成為現(xiàn)實(shí)。我們可以想象,在一個(gè)虛擬的三維場(chǎng)景中,一個(gè)有著真正三維身體的“人”在其間代替你交談、工作,現(xiàn)實(shí)中的你可以在一個(gè)虛擬的三維的“真實(shí)”世界中變成另一個(gè)你,一個(gè)活靈活現(xiàn)的你;一個(gè)可做出真正動(dòng)作,真正與他人“交往”的你,而不再是利用數(shù)字化的化身,如帳號(hào)、郵箱、ICQ、QQ等,而做到這些,你只需一個(gè)3D鼠標(biāo)和一個(gè)耳機(jī),就能夠在虛擬世界中生活。1.2虛擬現(xiàn)實(shí)建模語(yǔ)言VRML(VirtualRealityModelingLangguage,虛擬現(xiàn)實(shí)建模語(yǔ)言)是一項(xiàng)和多媒體通訊(MultimediaCommunication),因特網(wǎng)(Internet),虛擬現(xiàn)實(shí)(VirtualReality,VR)等領(lǐng)域密切相關(guān)的新技術(shù),其基本目標(biāo)是建立因特網(wǎng)上的交互式三維多媒體。VRML于1998年1月被正式比準(zhǔn)為國(guó)際標(biāo)準(zhǔn)(ISO/IEC14772-1:1997,通常稱為VRML97),創(chuàng)立了標(biāo)準(zhǔn)化進(jìn)程僅18個(gè)月的ISO/IEC記錄,它還是第一個(gè)用HTML發(fā)布的國(guó)際標(biāo)準(zhǔn)。VRML是一種3D交換格式,它定義了當(dāng)今3D應(yīng)用中的絕大多數(shù)常見(jiàn)概念,諸如變換層級(jí),光源,視點(diǎn),幾何,動(dòng)畫(huà),霧,材質(zhì)屬性和紋理映射等等。VRML的基本目標(biāo)是確保能夠成為一種有效的3D文件交換格式。VRML是HTML的3D模型。它把交互式三維能力帶入了萬(wàn)維網(wǎng),即VRML是一種可以發(fā)布3D網(wǎng)頁(yè)的跨平臺(tái)語(yǔ)言。事實(shí)上,三維提供了一種更自然的體驗(yàn)方式,例如游戲,工程和科學(xué)可視化,教育和建筑。諸如此類(lèi)的典型項(xiàng)目?jī)H靠基于網(wǎng)頁(yè)的文本和圖像是不夠的,而需要增強(qiáng)交互性,動(dòng)態(tài)效果連續(xù)感以及用戶的參與探索,這正是VRML的目標(biāo)。VRML提供的技術(shù)能夠把三維,二維,文本和多媒體集成為統(tǒng)一的整體。當(dāng)把這些媒體類(lèi)型和腳本描述語(yǔ)言(scriptinglanguage)以及因特網(wǎng)的功能結(jié)合在一起時(shí),就可能產(chǎn)生一種全新的交互式應(yīng)用。VRML在支持經(jīng)典二維桌面模型的同時(shí),把它擴(kuò)展到更廣闊的時(shí)空背景中。這里需要強(qiáng)調(diào)說(shuō)明的是:VRML采用笛卡爾、右手、3維坐標(biāo)系統(tǒng)。缺省情況,通過(guò)在正的Z軸方向上投影,對(duì)象將其投影到一個(gè)2維設(shè)備,其中X軸向右,Y軸向上。標(biāo)準(zhǔn)的長(zhǎng)度和距離單位是米。標(biāo)準(zhǔn)的角度單位是度。VRML的優(yōu)點(diǎn)與缺點(diǎn):優(yōu)點(diǎn):平臺(tái)無(wú)關(guān),無(wú)論你的平臺(tái)是PC還是SGI,都可以瀏覽VRML世界;基于Web,能夠建立三維可視化服務(wù)器;能夠快速建模:支持PROTO等靈活的編程方式;大量的可用資源:越來(lái)越多的Internet站點(diǎn)含有與VRML有關(guān)的內(nèi)容。缺點(diǎn):著色不如OpenGL快;沒(méi)有底層控制;有限的界面。VRML的未來(lái):1997年是VRML發(fā)展的一個(gè)里程碑,但到1998年中期開(kāi)始流行VRML行將死亡的說(shuō)法,不過(guò)更多的人則開(kāi)始考慮VRML-NG(新一代VRML),以及VRML與其它3D技術(shù)的溶合??偟膩?lái)說(shuō),VRML有以下發(fā)展趨勢(shì):VRML繼續(xù)發(fā)展:增加新的節(jié)點(diǎn)與功能,如用于數(shù)字化地球的GeoVRML,分布式計(jì)算的DIS與VRTP等。X3D:基于XML的VRML-NG,已有提案與演示。MPEG4:用于數(shù)字化影視的新技術(shù),基于VRML。VRML2002:X3D與VRML溶合的產(chǎn)物,并希望在2002年通過(guò)ISO認(rèn)證。不管未來(lái)怎樣,將平面的Internet發(fā)展成為一個(gè)交互的、三維的虛擬生存空間總是人們始終追求的目標(biāo),當(dāng)然這一過(guò)程要遠(yuǎn)比想象復(fù)雜得多。1.3VRML的發(fā)展史VRML開(kāi)始于20世紀(jì)90年代初期。1994年3月在日內(nèi)瓦召開(kāi)的第一屆WWW大會(huì)上,首次正式提出了VRML這個(gè)名字。1994年10月在芝加哥召開(kāi)的第二屆WWW大會(huì)上公布了規(guī)范的VRML1.0標(biāo)準(zhǔn)。VRML1.0可以創(chuàng)建靜態(tài)的3D景物,但沒(méi)有聲音和動(dòng)畫(huà),你可以在它們之間移動(dòng),但不允許用戶使用交互功能來(lái)瀏覽三維世界。它只有一個(gè)可以探索的靜態(tài)世界。1996年8月在新奧爾良召開(kāi)的優(yōu)秀3D圖形技術(shù)會(huì)議-Siggraph'96上公布通過(guò)了規(guī)范的VRML2.0標(biāo)準(zhǔn)。它在VRML1.0的基礎(chǔ)上進(jìn)行了很大的補(bǔ)充和完善。它是以SGI公司的動(dòng)態(tài)境界MovingWorlds提案為基礎(chǔ)的。比VRML1.0增加了近30個(gè)節(jié)點(diǎn),增強(qiáng)了靜態(tài)世界,使3D場(chǎng)景更加逼真,并增加了交互性、動(dòng)畫(huà)功能、編程功能、原形定義功能。1997年12月VRML作為國(guó)際標(biāo)準(zhǔn)正式發(fā)布,1998年1月正式獲得國(guó)際標(biāo)準(zhǔn)化組織ISO批準(zhǔn)(國(guó)際標(biāo)準(zhǔn)號(hào)ISO/IEC14772-1:1997),簡(jiǎn)稱VRML97。VRML97只是在VRML2.0基礎(chǔ)進(jìn)行上進(jìn)行了少量的修正,它這意味著VRML已經(jīng)成為虛擬現(xiàn)實(shí)行業(yè)的國(guó)際標(biāo)準(zhǔn)。VRML規(guī)范支持紋理映射、全景背景、霧、視頻、音頻、對(duì)象運(yùn)動(dòng)、和碰撞檢測(cè)——一切用于建立虛擬世界的所具有的東西。1998年。VRML組織把自己改名為Web3D組織。1999年底,VRML的又一種編碼方案X3D草案發(fā)布。X3D整合正在發(fā)展的XML、JAVA、流技術(shù)等先進(jìn)技術(shù),包括了更強(qiáng)大、更高效的3D計(jì)算能力、渲染質(zhì)量和傳輸速度。以及對(duì)數(shù)據(jù)流強(qiáng)有力的控制,多種多樣的交互形式。2000年6月世界web3D協(xié)會(huì)發(fā)布了VRML2000國(guó)際標(biāo)準(zhǔn)(草案),2000年9月又發(fā)布了VRML2000國(guó)際標(biāo)準(zhǔn)(草案修訂版)。2002年,正式發(fā)表了X3D標(biāo)準(zhǔn),及相關(guān)3D瀏覽器。由此,虛擬現(xiàn)實(shí)技術(shù)進(jìn)入了一個(gè)嶄新的發(fā)展時(shí)代。1.4VRML的工作原理用文本信息描述三維場(chǎng)景,在Internet網(wǎng)上傳輸,在本地機(jī)上由VRML的瀏覽器解釋生成三維場(chǎng)景,解釋生成的標(biāo)準(zhǔn)規(guī)范即是VRML規(guī)范。正是基于VRML的這種工作機(jī)制,才使其可能在網(wǎng)絡(luò)應(yīng)用中有很快的發(fā)展。當(dāng)初VRML的設(shè)計(jì)者們考慮的也正是--文本描述的信息在網(wǎng)絡(luò)上的傳輸比圖形文件迅速,所以他們避開(kāi)在網(wǎng)絡(luò)上直接傳輸圖形文件而改用傳輸圖形文件的文本描述信息,把復(fù)雜的處理任務(wù)交給本地機(jī)從而減輕了網(wǎng)路的負(fù)荷。然而,Internet上目前采用的HTTP協(xié)議不適于大范圍虛擬環(huán)境的傳輸,而且展現(xiàn)在瀏覽考眼前的圖像是預(yù)先已編排好的,瀏覽考沒(méi)有參與和交互信息的自由。為了解決這個(gè)問(wèn)題,美國(guó)海軍研究院的研究人員在研究利用VRML和Java實(shí)現(xiàn)基于網(wǎng)絡(luò)的分布式控制中,提出了一個(gè)虛擬現(xiàn)實(shí)傳輸協(xié)議VRTP(VirtualRealityTransferProtocol),擬在提供網(wǎng)絡(luò)3D圖形和大范圍虛擬環(huán)境多點(diǎn)傳送流和網(wǎng)絡(luò)監(jiān)控能力,其基本原理是:在網(wǎng)絡(luò)的底層利用TCP/IP協(xié)議,應(yīng)用對(duì)等層的概念,在VRML場(chǎng)景和TCP/TP協(xié)議之間加上一個(gè)Java通訊軟件層,其通訊內(nèi)容包括;實(shí)體或替身狀態(tài)變化信息,用戶之間交互信息以及虛擬世界環(huán)境的變化信息。這樣,場(chǎng)景層不用考慮網(wǎng)絡(luò)通訊的細(xì)節(jié),按規(guī)定好的方式相互通訊即可,而軟件開(kāi)發(fā)的關(guān)鍵就是Java通訊層的開(kāi)發(fā)和其與VRML虛擬世界之間接口的制定。1.5VRML的功能及應(yīng)用VRML包含3D動(dòng)畫(huà)、音效、傳感器觸發(fā)、事件輸入輸出、行為控制、支持多種腳本與多重使用者等功能,真正在Web上實(shí)現(xiàn)了動(dòng)態(tài)頁(yè)面,并加強(qiáng)了互動(dòng)功能,達(dá)到真正虛擬的效果。VRML在遠(yuǎn)程教育、科學(xué)計(jì)算可視化、工程技術(shù)、建筑、電子商務(wù)、交互式娛樂(lè)、藝術(shù)等領(lǐng)域都有著廣泛的應(yīng)用前景,利用它可以創(chuàng)建多媒體通信、分布式虛擬現(xiàn)實(shí)、設(shè)計(jì)協(xié)作系統(tǒng)、實(shí)境式電子商務(wù)、網(wǎng)絡(luò)游戲、虛擬社區(qū)、賽博空間等全新的應(yīng)用系統(tǒng)。1.典型的應(yīng)用領(lǐng)域(1)教育應(yīng)用把VRML用于建造人體模型、電腦太空旅行、化合物分子結(jié)構(gòu)顯示等領(lǐng)域。由于數(shù)據(jù)更加逼真,大大提高了人們的想象力、激發(fā)了受教育者的學(xué)習(xí)興趣,學(xué)習(xí)效果十分顯著。隨著計(jì)算機(jī)技術(shù)、心理學(xué)、教育學(xué)等多種學(xué)科的相互結(jié)合、促進(jìn)和發(fā)展,能夠提供更加協(xié)調(diào)的人機(jī)對(duì)話途徑。(2)工程應(yīng)用當(dāng)前的工程很大程度上要依賴于圖形工具,以便直觀地顯示各種產(chǎn)品,目前CAD/CAM已經(jīng)成為機(jī)械、建筑等領(lǐng)域必不可少的軟件工具。VRML將使工程人員能通過(guò)全球網(wǎng)或內(nèi)部網(wǎng)按協(xié)作方式進(jìn)行三維模型的設(shè)計(jì)、交流和發(fā)布,從而進(jìn)一步提高生產(chǎn)率并削減成本。(3)商業(yè)應(yīng)用對(duì)于那些期望與客戶建立直接聯(lián)系的公司,尤其是那些在他們的主頁(yè)上向客戶發(fā)送電子廣告的公司,Internet具有特別的吸引力。VRML有可能大幅度改善顧客購(gòu)買(mǎi)商品的經(jīng)歷。例如,顧客可以訪問(wèn)虛擬世界中的商店,在那里挑選商品,然后通過(guò)Internet辦理付款手續(xù),商店則及時(shí)把商品送到顧客手中。(4)娛樂(lè)應(yīng)用娛樂(lè)領(lǐng)域是VRML的一個(gè)重要應(yīng)用領(lǐng)域。VRML是一個(gè)功能十分強(qiáng)大的在Internet網(wǎng)上交換三維場(chǎng)景的描述性語(yǔ)言,它能提供更好的多人之間的交互,提供更加逼真的虛擬環(huán)境,從而使人們能夠享受其中的樂(lè)趣,帶來(lái)更好的娛樂(lè)感覺(jué)。VRML目前正朝著實(shí)時(shí)通信、大規(guī)模用戶交互的方向發(fā)展。2.成功案例(1)科技探索一個(gè)對(duì)火星好奇的學(xué)生登上虛擬的宇宙飛船,從地面點(diǎn)火起飛,并嘗試各種飛行路徑飛向這個(gè)紅色星球。在火星表面登陸后驅(qū)車(chē)?yán)@著科學(xué)上正確的軌跡運(yùn)動(dòng)-帶有合適的重力和光照。這一景象在火星探路者登上火星時(shí)已經(jīng)借助VRML技術(shù)發(fā)生在全球Internet用戶的眼前:利用三維的虛擬太陽(yáng)系模型和來(lái)自火星的大量數(shù)據(jù),物理和天文學(xué)世界被帶入生活中,而且比任何書(shū)本或第一代Web頁(yè)面更為吸引人,并具有交互性。(2)商業(yè)宣傳百事可樂(lè)公司在自己的網(wǎng)站上創(chuàng)建一個(gè)廣告畫(huà)面:探路者在火星表面走動(dòng)且發(fā)現(xiàn)了一瓶百事可樂(lè)!所有文件只有12KB,因此能十分方便地配置在一個(gè)普通的Web站點(diǎn)上。美國(guó)Construct公司最近完成了一個(gè)VRML項(xiàng)目,目的是展示VRML作為一個(gè)故事片媒介。片長(zhǎng)11分鐘,高分辨率逼真圖形的故事占了不到1MB磁盤(pán)空間。相似長(zhǎng)度和質(zhì)量的一個(gè)MPEG電影將比它大300倍。(3)電子購(gòu)物珠寶加工商為遠(yuǎn)距離客戶加工珠寶,為了確保最終樣式符合客戶的期望,可應(yīng)用VRML創(chuàng)作工具建立一個(gè)項(xiàng)鏈模型,然后把設(shè)計(jì)通過(guò)Web傳送給顧客。雖然客戶沒(méi)有拿到真正的東西,但仍能從所有角度考察這種項(xiàng)鏈,檢查反射面的形狀,以決定作為基片的寶石高度。因此,在設(shè)計(jì)階段就把客戶的需求呈現(xiàn)出來(lái)。類(lèi)似的VRML應(yīng)用范圍很廣,從醫(yī)療構(gòu)圖、分子造型、工程與設(shè)計(jì)、建筑到包含更多娛樂(lè)的游戲、各種廣告、虛擬劇場(chǎng)以及日常生活的習(xí)俗,如起居室的選擇和家具擺設(shè)、周末公園旅游計(jì)劃、汽化器維修等。(4)文物保護(hù)意大利教堂的壁畫(huà)被破壞已經(jīng)很長(zhǎng)時(shí)間了,但是仍有足夠的信息使它恢復(fù)原來(lái)的模樣。采用建筑造型恢復(fù)教堂和采用圖像掃描技術(shù)恢復(fù)壁畫(huà),然后把它們集成到VRML文件中,這樣,藝術(shù)學(xué)院的學(xué)員就能在走廊里行走,觀看頭頂?shù)谋诋?huà)在一天中的不同時(shí)候,隨著光線的不同而呈現(xiàn)的不同圖案,當(dāng)然還可以增加鑒賞評(píng)論等有關(guān)壁畫(huà)的信息。這種需求在我國(guó)更多,也更為緊迫,如敦煌石窟、兵馬傭、長(zhǎng)城以及眾多的園林。(5)娛樂(lè)業(yè)Blitom是一家位于美國(guó)洛杉磯的娛樂(lè)公司,最近與Cosmo軟件公司演示了第一部VRML動(dòng)畫(huà)片。將一個(gè)演員的動(dòng)作和聲音捕捉下來(lái),即時(shí)轉(zhuǎn)換成一個(gè)卡通角色,并且現(xiàn)場(chǎng)廣播到SIGGRAPH展示會(huì)的多個(gè)視點(diǎn)。呈現(xiàn)出來(lái)的非常美麗的動(dòng)畫(huà)電影的確是一個(gè)活生生的超媒體感覺(jué),每個(gè)觀眾都能獨(dú)立地改變攝像機(jī)角度。這項(xiàng)工作目前進(jìn)展到能夠讓這種類(lèi)型的應(yīng)用程序由用戶利用28.8kbps的調(diào)制解調(diào)器在因特網(wǎng)上運(yùn)行。1.6VRML當(dāng)前難題與前景VRML遠(yuǎn)不能滿足人們的要求。首先是網(wǎng)絡(luò)傳輸速度不能滿足視頻的實(shí)時(shí)傳輸和大量信息的交換;其次是虛擬現(xiàn)實(shí)所使用的設(shè)備正處在發(fā)展階段,遠(yuǎn)未達(dá)到普及的程度。VRML進(jìn)一步發(fā)展的一大障礙就是三維渲染的速度問(wèn)題,這主要因?yàn)橛布€沒(méi)有跟上發(fā)展。有關(guān)人士認(rèn)為80年代是個(gè)人計(jì)算機(jī)的時(shí)代,90年代是多媒體計(jì)算機(jī)的時(shí)代,而21世紀(jì)初將是VR技術(shù)的時(shí)代。VRML,作為一種三維的ISO國(guó)際標(biāo)準(zhǔn)將得到越來(lái)越廣泛的應(yīng)用,具有廣闊的發(fā)展前景和強(qiáng)大的生命力。以VRML為核心的第二代WWW將不斷發(fā)展壯大,并逐漸深入我們的生活。隨著信息技術(shù)的不斷出新,VRMI也必將尋求與其他技術(shù)更好的融合,英、美、日等國(guó)政府及大公司已不借投入巨額資金進(jìn)行該領(lǐng)域的研究與開(kāi)發(fā)工作,研制VRMLNG、基于XML的VRML以及用于數(shù)字化地球的GeoVRML等等,相信在不久的將來(lái),VRML必將得到更加廣泛迅速的完善和應(yīng)用。第二章:可行性分析第二章可行性分析并不是所有問(wèn)題都有簡(jiǎn)單明顯的解決辦法??尚行苑治龅哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決??尚行匝袥Q的目的不是解決問(wèn)題,而是確定問(wèn)題是否值得去解。首先必須分析VRML的問(wèn)題定義,初步確定整個(gè)虛擬場(chǎng)景的規(guī)模和目標(biāo)。通過(guò)技術(shù)、經(jīng)濟(jì)、操作等方面進(jìn)行可行性研究。最后定出虛擬場(chǎng)景實(shí)現(xiàn)的初步計(jì)劃。2.1VRML軟硬件平臺(tái)分析2.1.1軟件平臺(tái)分析由于VRML具有平臺(tái)無(wú)關(guān)性,故VRML適用于絕大部分的操作系統(tǒng)2.1.2硬件平臺(tái)分析虛擬現(xiàn)實(shí)用各個(gè)方位來(lái)實(shí)現(xiàn)三維立體圖象,這就與普通的多媒體展現(xiàn)有著本質(zhì)的區(qū)別。普通的多媒體可以通過(guò)普通的計(jì)算機(jī)交互設(shè)備來(lái)實(shí)現(xiàn),包括鍵盤(pán)、鼠標(biāo)等,再由顯示器和音箱構(gòu)成多媒體系統(tǒng)。但虛擬現(xiàn)實(shí)是模擬一個(gè)現(xiàn)實(shí)環(huán)境,它需要一些特殊的工具來(lái)瀏覽,例如數(shù)據(jù)手套、數(shù)據(jù)頭盔,光學(xué)系統(tǒng)、立體聲音箱和追蹤系統(tǒng)結(jié)構(gòu)等等。由于這些工具現(xiàn)在還不能具備,所以這能再普通PC機(jī)上實(shí)現(xiàn)虛擬的現(xiàn)實(shí)場(chǎng)景。由于整個(gè)三維立體場(chǎng)景在執(zhí)行過(guò)程中需要設(shè)計(jì)大量的圖形計(jì)算和大量數(shù)據(jù)讀入讀出,故對(duì)于計(jì)算機(jī)的顯存和CPU主頻由較高要求,特別是瀏覽比較復(fù)雜,而且色彩渲染度較高的場(chǎng)景時(shí),這一技術(shù)瓶頸相當(dāng)突出。如果有可能在瀏覽M級(jí)的虛擬場(chǎng)景時(shí)計(jì)算機(jī)的CPU配置最好能在200M以上和8M顯存。在這個(gè)配置下可以勉強(qiáng)瀏覽虛擬場(chǎng)景。而且顯示器最好選擇CRT,顯示器分辨率在1024×768以上,顏色為32位色以上。如果選擇LCD顯示器,在瀏覽較大場(chǎng)景時(shí)將會(huì)有比較明顯的延遲現(xiàn)象,如果分辨率較低對(duì)很多三維設(shè)計(jì)器產(chǎn)生影響,而且在瀏覽場(chǎng)景中的物體時(shí),視角也比較小。在如下的介紹中會(huì)大致敘述一下。整個(gè)畢業(yè)設(shè)計(jì)的過(guò)程大部分是在Windows2000Server上完成的,因此論述使用心得、關(guān)鍵技術(shù)、進(jìn)一步研究的思路時(shí)主要以Windows2000Server平臺(tái)為例。2.2經(jīng)濟(jì)可行性和操作可行性在經(jīng)濟(jì)上開(kāi)發(fā)一個(gè)這樣的系統(tǒng)是不困難的。在操作上,可以在PC上實(shí)現(xiàn)。同樣可以在網(wǎng)絡(luò)上發(fā)布,場(chǎng)景可以嵌在時(shí)下流行的ASP等網(wǎng)絡(luò)語(yǔ)言中,不過(guò)在網(wǎng)絡(luò)上實(shí)現(xiàn)時(shí)就需要考慮文件大小和網(wǎng)絡(luò)傳輸方面的問(wèn)題。2.3國(guó)內(nèi)外解決問(wèn)題的方法和技術(shù)路線利用VRML創(chuàng)建虛擬環(huán)境,生成三維模型的方法大致有三類(lèi):第一類(lèi)是利用VRML節(jié)點(diǎn)語(yǔ)法直接編寫(xiě)程序。它不需要專(zhuān)門(mén)的編譯軟件,在Windows下的NOTEPAD或WORDPAD即可編寫(xiě)程序。然而,要根據(jù)繁瑣的數(shù)字構(gòu)造出確切的三維空間模型是很困難的,對(duì)于復(fù)雜模型的構(gòu)造和修改就更加不便。第二類(lèi)是利用建模軟件如3DMAX來(lái)制作。先創(chuàng)建所需的模型,然后利用VRML插件將其轉(zhuǎn)化為VRML文件。這種方法相對(duì)于第一種簡(jiǎn)單,但實(shí)用性受到了一定限制。例如,三維造型軟件要使虛擬環(huán)境的渲染效果有更強(qiáng)烈的沉浸感,可以將造型數(shù)據(jù)導(dǎo)出為VRML文件,但這種導(dǎo)出的過(guò)程非常笨拙和耗時(shí),待別是在處理大批量數(shù)據(jù)的情況下,問(wèn)題尤為突出。此外,在導(dǎo)出的過(guò)程中,很可能丟失效據(jù)。第三類(lèi)則利用一些VR的可視化開(kāi)發(fā)工具。這種方法對(duì)于簡(jiǎn)單的三維模型十分有效,但對(duì)于復(fù)雜的模型則比較困難。如ISB(InternetSpaceBuilder)主要用于空間建模,ISA(InternetSceneAssembler)適合進(jìn)行場(chǎng)景組合,而ICA(InternetCharacterAnimator)則擅長(zhǎng)三維動(dòng)畫(huà)制作。其中ISA可以用于組裝交互式、動(dòng)態(tài)的三維場(chǎng)景。組裝好的場(chǎng)景可以發(fā)布到Web上,用任何VRML瀏覽器瀏覽。ISA在用戶和場(chǎng)景間建立的所有交互都無(wú)需編程。ICA能夠制作動(dòng)態(tài)的三維人物,通過(guò)ICA關(guān)鍵幀,可以產(chǎn)生人物的多種表情、動(dòng)作等。ICA也無(wú)需編程,因?yàn)槿魏蝿?dòng)畫(huà)參數(shù)操作都在三維窗口中顯示。ISB定位在建筑的VRML制作,真正做到了所見(jiàn)即所得,同時(shí)ISB還提供了Objects庫(kù)、Shape庫(kù)、Textures庫(kù)等。Shape庫(kù)中包含了幾種標(biāo)準(zhǔn)的三維實(shí)體(長(zhǎng)方體、三棱柱、球、圓錐等)。用戶可以將需要復(fù)用的模型放入Objects庫(kù)中,也可以根據(jù)語(yǔ)法規(guī)則,在Shape庫(kù)中加入自己的標(biāo)準(zhǔn)實(shí)體。在建模時(shí),可以將這些實(shí)體直接拖放到設(shè)計(jì)場(chǎng)景中,對(duì)實(shí)體進(jìn)行編輯,如剪裁、旋轉(zhuǎn)、伸縮、組合等?;谝陨蠋追N方法的考慮,結(jié)合虛擬現(xiàn)實(shí)(VR)系統(tǒng)的持點(diǎn),將后兩種方法結(jié)合起來(lái),進(jìn)行VRML生成虛擬場(chǎng)景的改進(jìn)是一種行之有效的做法。簡(jiǎn)單說(shuō),就是將三維建模工具與VRML可視化工具結(jié)合起來(lái),將VRML中的VR特性融入造型軟件之中。具體實(shí)現(xiàn)過(guò)程如下圖所示:可視化工具組裝成整體模型可視化工具實(shí)現(xiàn)簡(jiǎn)單結(jié)構(gòu)完善模型的交互功能模型優(yōu)化和轉(zhuǎn)化三維建模軟件對(duì)復(fù)雜結(jié)構(gòu)建模三維建模軟件如3DStudioMAX中集成有VRML格式的造型方法,為將3DMAX直接應(yīng)用于虛擬場(chǎng)景的構(gòu)造提供了可能性。在構(gòu)造虛擬場(chǎng)景時(shí),對(duì)于復(fù)雜的部分,首先考慮利用3DMAX建模,建模時(shí)一方面要保證模型的逼真度,另一方面要注意簡(jiǎn)化模型的數(shù)據(jù)量。如我們可以充分利用3DMAX中的Optimize選項(xiàng)進(jìn)行數(shù)據(jù)優(yōu)化。同時(shí),由于造型數(shù)據(jù)導(dǎo)出為VRML文件后,通常需要將行為和一些對(duì)象的屬性進(jìn)行手工調(diào)整和重新輸入,這時(shí),我們可以建立一個(gè)有效的接口去易化這種修復(fù)的復(fù)雜性。如我們可以利用壓縮的方法消除VRML格式可視化工具組裝成整體模型可視化工具實(shí)現(xiàn)簡(jiǎn)單結(jié)構(gòu)完善模型的交互功能模型優(yōu)化和轉(zhuǎn)化三維建模軟件對(duì)復(fù)雜結(jié)構(gòu)建模第三章:VRML瀏覽器和制作工具的無(wú)關(guān)數(shù)據(jù),降低VRML精度,提高模型的轉(zhuǎn)化效率。然后再利用VRML可視化工具實(shí)現(xiàn)相對(duì)簡(jiǎn)單的部分,并完善模型的交互功能,向模型加入多視點(diǎn)和動(dòng)畫(huà)等效果。最后再利用可視化工具將模型組裝成一個(gè)整體。這樣構(gòu)造模型生成的文件并不大,效果也比較好。實(shí)踐證明,綜合運(yùn)用VRML可視化工具和三維造型軟件,可以大大提高系統(tǒng)的開(kāi)發(fā)放率。第三章VRML瀏覽器和制作工具VRML瀏覽器和制作工具相當(dāng)多,在掌握了VRML語(yǔ)言基本語(yǔ)法的基礎(chǔ)上掌握一兩種有效的開(kāi)發(fā)軟件,對(duì)于開(kāi)發(fā)VRML虛擬場(chǎng)景來(lái)說(shuō)是必不可少的。3.1VRML瀏覽器介紹如果想瀏覽VRML,就必須安裝VRML播放器,目前支持VRML的播放器很多,這些播放器的功能特性也有較大的差異。主要包括CosmoPlayer、Cortona、blaxxunContact、WorldView。這里僅對(duì)本次設(shè)計(jì)中使用到的瀏覽器CosmoPlayer和Cortona進(jìn)行介紹3.2.1CosmoPlayer瀏覽器應(yīng)用平臺(tái):Macintosh、SGI、Windows3.x、Windows9x、WindowsNTCosmoPlayer曾經(jīng)是最好的VRML瀏覽器,它出自VRML的早期領(lǐng)導(dǎo)者SGI公司,在速度、質(zhì)量、兼容性等諸多方面,都曾遙遙領(lǐng)先。但由于它被一再轉(zhuǎn)手,研究人員流失殆盡,原先的各種優(yōu)勢(shì)不復(fù)存在。但CosmoPlayer的控制面板至今仍是最好、最科學(xué)的,可方便地在WALK模式和EXAMINE模式之間進(jìn)行切換,它的兼容性和質(zhì)量至今仍是一流的,但速度和擴(kuò)展能力已遠(yuǎn)遠(yuǎn)落在blaxxunContact和Cortona之后了。之所以它還占據(jù)著VRML瀏覽器市場(chǎng)的第一位,僅僅是歷史原因造成的,如果它在CA的生存環(huán)境仍得不到改善的話,這種狀況大概不會(huì)維持太久了。界面如下所示:選擇視點(diǎn)或?qū)Ш綄?duì)觀察點(diǎn)及其造型進(jìn)行控制選擇視點(diǎn)或?qū)Ш綄?duì)觀察點(diǎn)及其造型進(jìn)行控制3.2.2Cortona瀏覽器應(yīng)用平臺(tái):Windows9x、WindowsNTParallelgraphics是目前VRML領(lǐng)域最有活力的一家公司,它的Cortona是blaxxunContact的最大競(jìng)爭(zhēng)對(duì)手,除很好地支持VRML97、NURBS外,還支持多種自己規(guī)格的擴(kuò)展功能,如鍵盤(pán)輸入、拖放控制、flash等,更是業(yè)內(nèi)第一個(gè)(也是唯一)支持最新EAI功能的VRML瀏覽器,而它的安裝文件僅有1.8M,是各種VRML瀏覽器中最小的。不過(guò)Cortona的兼容性做得稍差,主要應(yīng)用環(huán)境是Windows平臺(tái)和IE瀏覽器,并且聲音功能還有一些小缺陷。界面如下所示:設(shè)置視點(diǎn)或?qū)Ш綄?duì)觀察點(diǎn)及造型進(jìn)行控制設(shè)置視點(diǎn)或?qū)Ш綄?duì)觀察點(diǎn)及造型進(jìn)行控制瀏覽器使用心得在這一次設(shè)計(jì)過(guò)程中使用了不同的瀏覽器主要有CosmoPlayer和Cortona,二者在使用上也少許區(qū)別,在效果上也不盡相同。經(jīng)過(guò)實(shí)驗(yàn)發(fā)現(xiàn)CosmoPlayer對(duì)VRML的各種效果支持比較好,對(duì)各種影像、聲音、導(dǎo)航系統(tǒng)的效果支持相當(dāng)好。在Windows98運(yùn)行環(huán)境下可以瀏覽各種VRML文件;但是最新版本的CosmoPlayer2.1.1在Windows2000或更高版本的Windows中卻不能單獨(dú)運(yùn)行系統(tǒng)經(jīng)常找不到CosmoPlayerControler的執(zhí)行文件。這可能跟CosmoPlayer已經(jīng)5年沒(méi)有更新有關(guān)。Cortona功能強(qiáng)大而且很小,它直接對(duì)IE瀏覽器進(jìn)行升級(jí)在Windows2000環(huán)境下運(yùn)行相當(dāng)穩(wěn)定,但是該瀏覽器對(duì)某些影像、聲音、導(dǎo)航系統(tǒng)的效果支持并不太好。這里尤其需要說(shuō)明的是在對(duì)影音、圖象文件的支持方面。理論上二者都支持MPEG、AVI、JPG、GIF格式,但是在實(shí)際應(yīng)用過(guò)程中發(fā)現(xiàn)CosmoPlayer在Windows98下可以瀏覽MPEG文件但是卻沒(méi)有產(chǎn)生聲音效果,不能瀏覽AVI格式的影音文件,支持JPG文件,但不支持GIF格式文件的運(yùn)動(dòng)效果;在Windows2000Server下Cortona只支持圖片格式的文件,對(duì)影音文件不支持。以上論述在7臺(tái)PC機(jī)上的不同操作系統(tǒng)中驗(yàn)證過(guò),但只能算是一點(diǎn)心得并沒(méi)有更深層次的研究,可能還存在一定的偏頗。3.2VRML設(shè)計(jì)工具介紹對(duì)于VRML來(lái)說(shuō),目前缺乏好的VRML編寫(xiě)器是一個(gè)大問(wèn)題。如同Mirosoft提出的所見(jiàn)即所得的HTML編輯器Frontpage一樣,所見(jiàn)即所得使得網(wǎng)頁(yè)制作不再是程序員的工作了,程序員被退到了后臺(tái),前臺(tái)的網(wǎng)頁(yè)設(shè)計(jì)就是平面設(shè)計(jì)師們的事了。Macromedia的Dreamweaver以及Flash的推出,使得網(wǎng)頁(yè)制作需要的只是創(chuàng)意了!VRML也同樣面臨這一問(wèn)題,虛擬現(xiàn)實(shí)本身需要的也只是藝術(shù)的三維造型和天馬行空的創(chuàng)意,但由于現(xiàn)今計(jì)算機(jī)軟件在這方面技術(shù)支持的缺乏,使得虛擬現(xiàn)實(shí)的制作不得不面對(duì)枯燥的VRML編寫(xiě),要把那些數(shù)字和三維空間的模型聯(lián)系起來(lái)是一件很困難的事。不過(guò)很高興的是越來(lái)越多的人現(xiàn)在開(kāi)始認(rèn)識(shí)到VRML的重要性,VRML的發(fā)展也牽動(dòng)了很多三維愛(ài)好者心,網(wǎng)上的相關(guān)軟件也會(huì)越來(lái)越多。以下簡(jiǎn)要介紹幾種常見(jiàn)的設(shè)計(jì)工具3.2.1最簡(jiǎn)單的設(shè)計(jì)工具——NotePad記事本無(wú)疑是簡(jiǎn)單的設(shè)計(jì)工具。這需要程序員面對(duì)大量的代碼,不光要熟悉VRML的所有節(jié)點(diǎn)而且對(duì)三維想象能力有極高的要求。如同編譯其他各種程序一樣作為通用編輯器的記事本有著繁雜且效率低下的特點(diǎn),不適于用來(lái)編程。當(dāng)然在記事本中編寫(xiě)后只要將文件名保存為.wrl同樣可以在瀏覽器中瀏覽。3.2.2公認(rèn)的最佳編輯器——VRMLPad來(lái)自俄羅斯大名鼎鼎的公司Parallelgraphics制作的VRMLPad是一種功能強(qiáng)大且簡(jiǎn)單好用的VEML開(kāi)發(fā)設(shè)計(jì)專(zhuān)業(yè)軟件,其完全支持VRML97標(biāo)準(zhǔn)通過(guò)VRMLPad可以對(duì)VRML文件進(jìn)行瀏覽編輯,對(duì)資源文件進(jìn)行有效管理,并且提供了VRML文件的發(fā)布向?qū)?,可以幫助開(kāi)發(fā)者編寫(xiě)和發(fā)布自己的VRML虛擬現(xiàn)實(shí)作品。其界面如下所示:43512435121.輔助區(qū)域:包括可折疊式的場(chǎng)景樹(shù)、路徑圖、資源、文件列表;2.編輯區(qū)域:可在區(qū)域內(nèi)編輯VRML語(yǔ)言,提供功能強(qiáng)大的編輯界面,顏色標(biāo)注,轉(zhuǎn)行機(jī)制,可折疊式文件樹(shù);3.出錯(cuò)信息:劃波浪線為提示出錯(cuò)信息;4.調(diào)試:調(diào)試內(nèi)嵌的JavaScript語(yǔ)言;5.文檔標(biāo)簽:顯示所打開(kāi)的文件VRMLPad除了編譯功能強(qiáng)大以外,還提供不少的插件,而且還提供VRML文件的下載。由于VRML作品本身的資源連接是在VRML源代碼中設(shè)置的,在VRML作品壓縮優(yōu)化過(guò)后,我們用單純地記事本等軟件打開(kāi)源代碼查找資源再手工一個(gè)個(gè)下載的辦法就失效了,只是一堆亂碼而已,但是利用VRMLPad自帶的下載功能可以輕松的從網(wǎng)上下載作品以便欣賞。需要提醒的是VRMLPad是共享軟件,在沒(méi)有注冊(cè)的情況下不能下載,不能復(fù)制,不能粘貼超過(guò)32K的文件。VRMLPad使用心得:1.現(xiàn)在在網(wǎng)上可以找到中文版的VRMLPad下載,但是漢化效果并不很好,尤其是TRUE(真)和FALSE(假)兩個(gè)保留字,經(jīng)常識(shí)別錯(cuò)誤;2.對(duì)中文注釋支持不夠,不能跨平臺(tái)顯示中文,與Windows平臺(tái)兼容性略顯不夠;3.在文件列表中新建、復(fù)制、刪除文件的功能沒(méi)有;4.保留字,轉(zhuǎn)行機(jī)制還需要進(jìn)一步加強(qiáng)。3.2.3強(qiáng)大的三維編輯器——3DMAX3DStudioMAX是Autodesk公司在Windows95/NT環(huán)境下全面重新開(kāi)發(fā)的一個(gè)動(dòng)畫(huà)制作產(chǎn)品,它具有一流的三維建模和動(dòng)畫(huà)制作功能,使用它可以在PC機(jī)上得到真正的工作站動(dòng)畫(huà)軟件的性能和圖像質(zhì)量,因而深受廣大用戶的喜愛(ài)。3DMAX無(wú)疑是3D圖形制作業(yè)的老大。有VRML編程經(jīng)驗(yàn)的讀者知道,用VRML建立復(fù)雜三維模型是相當(dāng)繁難的,而且毫無(wú)直觀性可言,而3DStudioMAX因其強(qiáng)大的三維建模和動(dòng)畫(huà)制作功能恰好可以彌補(bǔ)VRML這方面的不足。為了更好地、更全面地支持VRML2.0,3DStudioMAX還提供了VRML2.0Helpers以幫助建立VRML世界,它包含了幾乎全部的VRML特有造型,極大地方便了VRML世界的建立。啟動(dòng)3DStudioMAX后,單擊命令面板中的Create,再單擊次級(jí)面板中的Helpers,在下拉式組合框中選取VRML2.0,這時(shí)命令面板上出現(xiàn)了12種VRML特有造型。啟動(dòng)3DStudioMAX后,單擊命令面板中的Create,再單擊次級(jí)面板中的Helpers,在下拉式組合框中選取VRML2.0,這時(shí)命令面板上出現(xiàn)了12種VRML特有造型。1)Anchor。Anchor用來(lái)創(chuàng)建虛擬空間中的一個(gè)錨點(diǎn)造型,它用于VRML世界之間的鏈接。點(diǎn)擊錨點(diǎn)造型將引導(dǎo)VRML瀏覽器順著鏈接檢索出該鏈接所連的VRML文件。這樣當(dāng)你漫步于Internet時(shí),你可以很方便地從一個(gè)虛擬空間跨入另一個(gè)虛擬空間。2)TouchSensor。TouchSensor用來(lái)創(chuàng)建虛擬空間中的一個(gè)接觸傳感器造型,它用于檢測(cè)參與者的動(dòng)作并將其轉(zhuǎn)化為適當(dāng)?shù)妮敵鲆杂|發(fā)一段動(dòng)畫(huà)。這樣當(dāng)你將鼠標(biāo)移到該造型或從該造型上移開(kāi)時(shí),就會(huì)開(kāi)始或停止一段動(dòng)畫(huà)。3)ProxSensor。ProxSensor用來(lái)創(chuàng)建虛擬空間中的一塊不可見(jiàn)的長(zhǎng)方形區(qū)域,該區(qū)域可以感知參與者的進(jìn)入、離開(kāi)以及參與者在該長(zhǎng)方形區(qū)域中移動(dòng)的時(shí)間等,以此來(lái)觸發(fā)一段動(dòng)畫(huà)或聲音。4)TimeSensor。TimeSensor用來(lái)創(chuàng)建一個(gè)控制虛擬空間中動(dòng)畫(huà)進(jìn)行的時(shí)鐘。由于VRML2.0動(dòng)畫(huà)采用了關(guān)鍵幀技術(shù),因而你必須為T(mén)imeSensor所控制的造型指定關(guān)鍵時(shí)刻和關(guān)鍵值,VRML2.0會(huì)利用線性內(nèi)插算法計(jì)算出這些關(guān)鍵值之間的值以達(dá)到動(dòng)畫(huà)平滑的效果。5)NavInfo。NavInfo用來(lái)描述虛擬空間中替身的導(dǎo)航信息特性。在虛擬現(xiàn)實(shí)技術(shù)中,替身是真實(shí)世界中的人在虛擬空間中的代表。使用替身,你可以控制它如何在虛擬空間中進(jìn)行交互,它所看見(jiàn)的也就是你所看見(jiàn)的。NavInfo可以指定替身外部輪廓的大小、他在虛擬空間中的行動(dòng)方式以及他在虛擬空間中的移動(dòng)速度等特性。6)Background。Background用來(lái)描述虛擬空間中的背景特征,為你的VRML世界提供一個(gè)外部環(huán)境。該背景由一個(gè)天空球體、一個(gè)在天空球體內(nèi)的地面球體和一個(gè)在天空與地面之間的背景立方體組成。這三者在概念上均為無(wú)窮大,你可以從不同的角度觀察它們,但你永遠(yuǎn)無(wú)法接近它們。7)Fog。Fog用來(lái)描述虛擬空間中霧的特性。利用Fog,你可以在你的虛擬空間中生成濃霧或薄霧,并可以改變霧的顏色。由于霧的存在會(huì)影響虛擬空間中造型的顏色,因而可以增加VRML世界的真實(shí)感。但請(qǐng)注意,F(xiàn)og不會(huì)對(duì)Background所描述的背景產(chǎn)生任何作用,因而你必須協(xié)調(diào)設(shè)計(jì)這兩者,以使你的VRML世界更加接近現(xiàn)實(shí)環(huán)境。8)AudioClip。AudioClip用來(lái)描述虛擬空間中的聲源特征,它可以將VRML2.0支持的wav文件格式或midi文件格式的聲音文件指定為聲源,并且可以控制聲音播放的速度和是否循環(huán)播放等。9)Sound。Sound利用AudioClip指定的聲源放聲,并將聲音控制在一個(gè)橢圓區(qū)域內(nèi),音量的大小按距離聲源的距離由近到遠(yuǎn)逐漸衰減,以達(dá)到真實(shí)世界中聲音傳播衰減的效果。10)Billboard。Billboard用來(lái)創(chuàng)建一個(gè)始終面向參與者的布告板,即使你圍繞它移動(dòng),它也始終面向你。11)LOD。LOD,即Levelofdetail,它用來(lái)描述同一造型不同細(xì)節(jié)層次的組織關(guān)系。由于遠(yuǎn)處造型的細(xì)節(jié)可以遠(yuǎn)遠(yuǎn)少于近處造型的細(xì)節(jié),我們可以利用一定的范圍設(shè)定,讓你的虛擬空間在不同的觀察距離上呈現(xiàn)出不同的細(xì)節(jié),這樣既可以減輕VRML瀏覽器的負(fù)擔(dān),又可以增加VRML世界的真實(shí)感。12)Inline。Inline是一種虛擬空間構(gòu)造技術(shù),它允許你在分離的VRML文件中創(chuàng)建VRML世界中的每一個(gè)造型,然后你可以將這些造型組織起來(lái)構(gòu)造出相當(dāng)復(fù)雜的VRML世界。Inline類(lèi)似于模塊化的設(shè)計(jì)思想,它使得你不必進(jìn)行某些重復(fù)性的工作,從而極大地減輕了開(kāi)發(fā)負(fù)擔(dān)。3DMAX使用心得:1.3DMAX在制作散文立體場(chǎng)景方面功能相當(dāng)強(qiáng)大。這次畢業(yè)設(shè)計(jì)只用到其中的九牛一毛;2.3DMAX對(duì)硬件的要求比較高。它要求使用1024×768的分辨率,最好是17吋顯示器,對(duì)CPU和圖形顯示卡的要求也非常高;3.利用3DMAX生成虛擬場(chǎng)景最大的缺點(diǎn)是代碼過(guò)于冗雜,因?yàn)?DMAX把場(chǎng)景中的每一個(gè)細(xì)微的面都進(jìn)行了細(xì)化,而且對(duì)場(chǎng)景中的每一個(gè)點(diǎn)的位置坐標(biāo)描述得相當(dāng)精確,而瀏覽虛擬場(chǎng)景時(shí)沒(méi)有必要這么精確,這主要是因?yàn)?DMAX并不是面向VRML開(kāi)發(fā)設(shè)計(jì)的;4.代碼編寫(xiě)的VRML場(chǎng)景中的一部分場(chǎng)景不能導(dǎo)入到3DMAX中去,如:PROTO這樣的自定義節(jié)點(diǎn)和大部分的交互節(jié)點(diǎn)以及動(dòng)畫(huà)節(jié)點(diǎn),這使得二者的兼容性不強(qiáng);5.3DMAX中的動(dòng)畫(huà)效果也不能導(dǎo)入到VRML當(dāng)中去,導(dǎo)出后只會(huì)一幀一幀的顯示,沒(méi)有達(dá)到預(yù)期的效果。3.2.4所見(jiàn)機(jī)所得的編輯器——CosmoWorldCosmoWorld是Cosmo軟件公司的VRML2.0創(chuàng)作環(huán)境。CosmoWorld提供了一整套開(kāi)發(fā)工具,包括從造型到動(dòng)畫(huà)以及到最后的發(fā)布。CosmoWorld提供了諸如多邊形造型器、材質(zhì)、紋理、光照編輯器、關(guān)鍵幀動(dòng)畫(huà)模塊、切換和腳本編輯器等多種功能并且還有場(chǎng)景合成、優(yōu)化、導(dǎo)航、觀看和發(fā)布的工具。其界面如下:1109872654311098726543=1\*GB3①瀏覽工具。類(lèi)似VRML的瀏覽器的工具欄??梢苑奖愕膶?duì)場(chǎng)景進(jìn)行瀏覽=2\*GB3②普通型體構(gòu)造。=3\*GB3③復(fù)雜場(chǎng)景點(diǎn)、線、面、文本框的構(gòu)造。=4\*GB3④傳感器節(jié)點(diǎn)生成器。=5\*GB3⑤內(nèi)插器節(jié)點(diǎn)生成器。=6\*GB3⑥多邊形生成器。=7\*GB3⑦主瀏覽框。=8\*GB3⑧添加關(guān)鍵幀動(dòng)畫(huà)模塊。=9\*GB3⑨場(chǎng)景樹(shù)。=10\*GB3⑩材質(zhì)紋理編輯器。CosmoWorld使用心得:CosmoWorld對(duì)硬件并不要求不高,但是顯示器最好能夠是17吋1024×768;CosmoWorld提供了強(qiáng)大的VRML支持,所以不會(huì)產(chǎn)生冗余;利用CosmoWorld進(jìn)行合并模塊時(shí)如果定義重復(fù)的節(jié)點(diǎn),在CosmoWorld里可以自己進(jìn)行區(qū)分,這一點(diǎn)對(duì)于合成VRML來(lái)說(shuō)節(jié)省了很大的精力;CosmoWorld的多邊形生成并不很強(qiáng)大,與很多強(qiáng)大的三維編輯器來(lái)說(shuō)過(guò)于簡(jiǎn)單。這也造成其并不能作為流行廣泛的VRML編輯器;CosmoWorld在場(chǎng)景中不能通過(guò)輸入數(shù)字來(lái)精確地定點(diǎn)此外還有設(shè)計(jì)工具如:ParallelGraphics的InternetSpaceBuilder3.0、Metacreations公司的Canoma和許多小型的VRML制作軟件如:Vtext等等3.3利用JavaScript進(jìn)行設(shè)計(jì)Java是一個(gè)由Sun公司開(kāi)發(fā)而成的新一代編程語(yǔ)言。使用它可以在各式各樣的不同機(jī)器、不同操作平臺(tái)的網(wǎng)絡(luò)環(huán)境中開(kāi)發(fā)軟件,不論使用那種WWW瀏覽器,那一種計(jì)算機(jī),那一種操作系統(tǒng),只要WWW瀏覽器上注明“支持Java”就可以看到生動(dòng)的主頁(yè)。Java正在逐步成為Internet應(yīng)用的主要開(kāi)發(fā)語(yǔ)言。Java具有簡(jiǎn)單性、面向?qū)ο笮?、分布式、解釋型、可靠、安全、平臺(tái)無(wú)關(guān)性、可移植、高性能、多線程、動(dòng)態(tài)性等特性。因此有人預(yù)言Java將會(huì)變成“世界語(yǔ)”。在VRML中,不能顯示場(chǎng)景行為改變時(shí)決策的邏輯,因?yàn)樗鼪](méi)有節(jié)點(diǎn)可以支持這種邏輯。場(chǎng)景也就因此被限制在先前定義的節(jié)點(diǎn)路線上,沿先前的路線來(lái)傳遞先前的事件。所以,要控制場(chǎng)景事件的程序,也只能在場(chǎng)景外部。VRML為我們提供了一個(gè)與場(chǎng)景外的程序相結(jié)合的節(jié)點(diǎn)這就是Script節(jié)點(diǎn)。我們可以通過(guò)Script節(jié)點(diǎn)來(lái)控制VRML的行為。我們可以使用編程語(yǔ)言來(lái)編寫(xiě),然后通過(guò)執(zhí)行模式連接到場(chǎng)景中去。事實(shí)上,Script節(jié)點(diǎn)就是利用Java或JavaScript語(yǔ)言編寫(xiě)的腳本來(lái)擴(kuò)展VRML的功能的。它可以創(chuàng)建出新的內(nèi)插器節(jié)點(diǎn)和傳感器節(jié)點(diǎn)來(lái)驅(qū)動(dòng)整個(gè)虛擬空間。一種最典型的實(shí)現(xiàn)Java程序到VRML場(chǎng)景中的控制方法,就是將Java程序從Script節(jié)點(diǎn)處獲取的事件經(jīng)過(guò)進(jìn)一步的加工,再將在Java程序中實(shí)現(xiàn)了操作者邏輯的信息反饋到Script接電站,由Script節(jié)點(diǎn)的eventOut事件出口通過(guò)路由對(duì)場(chǎng)景進(jìn)行控制。在這種模式中,對(duì)加工的場(chǎng)所,它和Script還是只有一個(gè)Script節(jié)點(diǎn)。Script節(jié)點(diǎn)就是連接Java和VRML之間的橋梁。可以利用Java實(shí)現(xiàn)各種復(fù)雜的運(yùn)動(dòng)。第四章:系統(tǒng)設(shè)計(jì)第四章系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)是進(jìn)行設(shè)計(jì)的前提沒(méi)有正確的系統(tǒng)設(shè)計(jì)就沒(méi)有正確的系統(tǒng),這樣的系統(tǒng)才能做到符合要求,功能完備。4.1故事梗概設(shè)計(jì)開(kāi)始設(shè)計(jì)之前最好對(duì)要設(shè)計(jì)什么樣的東西有一個(gè)大致的思路??梢杂靡粋€(gè)加以注釋的草圖來(lái)說(shuō)明自己的思路。一個(gè)什么樣的想法決定了系統(tǒng)的大小、實(shí)現(xiàn)的難易程度。場(chǎng)景可以是與現(xiàn)實(shí)相接近的,也可以是光怪陸離的。4.2虛擬場(chǎng)景的功能本場(chǎng)景是實(shí)現(xiàn)一個(gè)桌面上的虛擬賽車(chē)場(chǎng)。它將采取有效的方式將二維、三維圖形、動(dòng)畫(huà)、影像、聲音、燈光等結(jié)合在一起。4.3建立對(duì)象集有了一個(gè)大致的想法后可以把場(chǎng)景進(jìn)行細(xì)化,該虛擬場(chǎng)景可以細(xì)化成多個(gè)對(duì)象集。大致分成:椅子和賽車(chē)場(chǎng)兩個(gè)大對(duì)象集。其中椅子場(chǎng)景又包括三個(gè)椅子和一個(gè)玻璃圓桌;其中賽車(chē)場(chǎng)場(chǎng)景包括地面、車(chē)、影像顯示設(shè)備、發(fā)聲設(shè)備、背景布、霓虹燈、宣傳小飾品等等4.4建立對(duì)象建立了對(duì)象集以后就要對(duì)對(duì)象集進(jìn)行細(xì)化,細(xì)化成一個(gè)個(gè)的對(duì)象。把對(duì)象集中的對(duì)象都列出來(lái)。分析哪些物體、紋理、材質(zhì)是可以重復(fù)利用的。開(kāi)始設(shè)計(jì)時(shí)不需要很仔細(xì)的設(shè)計(jì)每一個(gè)東西,只要有個(gè)大概的意思就可以了,在以后的工作中可以進(jìn)一步進(jìn)行細(xì)化。在建立對(duì)象時(shí)還要分析哪些物體是希望它動(dòng)的,那些物體是希望它有交互功能的。主要對(duì)象為椅子包括椅背、椅墊、椅架;圓桌包括上下兩個(gè)玻璃面和一根金屬支架;車(chē)包括車(chē)前、車(chē)身和車(chē)燈;影像顯示設(shè)備包括:顯示器和傳感器;背景布包括背景和左右兩個(gè)傳感器;發(fā)聲設(shè)備包括支架和喇叭;霓虹燈包括左右10個(gè)燈柱;宣稱小飾品包括V字型標(biāo)識(shí)和包裹立方體;光源若干等等4.5物體的基本造型對(duì)對(duì)象進(jìn)行了細(xì)化后就要研究每一個(gè)物體,由于每一個(gè)物體都有物理特性,所以就要研究物體的基本造型,包括形狀、顏色、材質(zhì)、發(fā)光、空間位置、聲音、圖片、光源、視點(diǎn)等等。由于基本造型眾多,在這里就不一一例舉了。4.6虛擬場(chǎng)景的要求1.瀏覽者可以與場(chǎng)景內(nèi)的物體或?qū)ο螽a(chǎn)生交互,計(jì)算機(jī)不能呆板的設(shè)定用戶,用戶可以在整個(gè)場(chǎng)景中隨意瀏覽有相當(dāng)大的自由度;2.運(yùn)行環(huán)境要盡可能低,減少不必要的計(jì)算,沒(méi)有冗余節(jié)點(diǎn);3.程序可讀性高第五章:詳細(xì)設(shè)計(jì)第五章詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)階段的根本目標(biāo)是確定應(yīng)該怎樣具體地實(shí)現(xiàn)所要求的系統(tǒng),也就是說(shuō),經(jīng)過(guò)這個(gè)階段的設(shè)計(jì)工作,應(yīng)該得出對(duì)目標(biāo)系統(tǒng)的精確描述,詳細(xì)設(shè)計(jì)的結(jié)果基本上決定了最終的程序代碼的質(zhì)量。為了實(shí)現(xiàn)整個(gè)VRML系統(tǒng),需要比較全面的掌握VRML語(yǔ)言,能夠熟練的掌握其中的大部分節(jié)點(diǎn)的特性。而且整個(gè)設(shè)計(jì)過(guò)程都需要對(duì)三維立體有一定的空間想象能力,空間定點(diǎn)也就成了整個(gè)設(shè)計(jì)過(guò)程中的重要一環(huán)。由于整個(gè)虛擬場(chǎng)景的代碼比較大,在這里介紹時(shí)不一一舉例了,在如下的詳細(xì)設(shè)計(jì)中著重對(duì)整個(gè)設(shè)計(jì)過(guò)程中的重要技術(shù)細(xì)節(jié)進(jìn)行描述。5.1對(duì)基本形體的設(shè)計(jì)VRML程序的主體是節(jié)點(diǎn)語(yǔ)句。程序的各個(gè)節(jié)點(diǎn)通過(guò)節(jié)點(diǎn)花括弧例的參數(shù)定義了三維世界的形體及其屬性。下面以一個(gè)地面型體為例簡(jiǎn)單敘述編碼過(guò)程。其中大部分空間點(diǎn)已被省略。DEFgroundTransform{#定義一個(gè)名為ground的Transform節(jié)點(diǎn)children Shape{#children表示Transform節(jié)點(diǎn)擁有一個(gè)Shape子節(jié)點(diǎn)#Shape能夠顯示出具有各種效果的形體,如各種顏色的物體、貼有圖片的物體appearance Appearance{#定義外觀material Material{#定義材質(zhì)屬性 ambientIntensity 0.377778#定義環(huán)境光 diffuseColor 0.4557320.4787230.418417#定義漫反射光 specularColor 111#定義鏡面反射光 emissiveColor 000#定義輻射光 shininess 0.03#定義物體表面的亮度 transparency 0#定義物體的透明度}}geometryIndexedFaceSet{#定義物體的幾何特征#一個(gè)IndexedFaceSet節(jié)點(diǎn)代表一個(gè)由一組頂點(diǎn)構(gòu)建的一系列平面多邊形形成的3D形體coord Coordinate{#指出標(biāo)號(hào)集中的所有頂點(diǎn) point [00-20,#指出一組三維坐標(biāo)值 -8.964971.4014222.5374]}color Color{#指出一組顏色 color [0.282170.3313080.478723, 0.07265060.5133690.325313]}coordIndex [72,23,70,71,-1,4,73,71, -1,310,314,311,-1]#指定生成平面所用的點(diǎn),以-1結(jié)束colorIndex [0,0,0,0,-1,0,0,0,-1,0,1,1,-1]#指定使用顏色的下標(biāo),以-1結(jié)束colorPerVertex TRUE#用來(lái)確定顏色是否和頂點(diǎn)一致texCoord TextureCoordinate{ point [0.50,0.1775721]}solid TRUE#標(biāo)注正反面是否可見(jiàn)creaseAngle 0#分清鄰面中所有不平行的面normalIndex []texCoordIndex [295,192,290,293,-1,151,297,292, -1,763,769,764,-1]}}translation 000#x,y,z的位移rotation0010#旋轉(zhuǎn)軸和旋轉(zhuǎn)角度scale111??s放比例}效果圖如下所示:5.2自定義節(jié)點(diǎn)設(shè)計(jì)VRML97國(guó)際標(biāo)準(zhǔn)中提供了54個(gè)節(jié)點(diǎn),利用這些節(jié)點(diǎn)可以描述各種三維形體,但是為了能使編程時(shí)更加靈活方便,可以創(chuàng)建自己的節(jié)點(diǎn)。特別是在創(chuàng)建場(chǎng)景時(shí)會(huì)發(fā)現(xiàn)很多場(chǎng)景都具有相同的結(jié)構(gòu),不同的僅僅是一些個(gè)別的屬性,因此可為這類(lèi)節(jié)點(diǎn)定義一個(gè)節(jié)點(diǎn)類(lèi)型,通過(guò)對(duì)圓形的實(shí)例化,在節(jié)點(diǎn)中改變節(jié)點(diǎn)的屬性來(lái)實(shí)現(xiàn)不同的效果。如下介紹了車(chē)的形體以及車(chē)的運(yùn)動(dòng)軌跡的自定義類(lèi)型節(jié)點(diǎn):PROTOKfaOrientationInterpolator[#定義一個(gè)位置變換的節(jié)點(diǎn),其中包括一個(gè)事件進(jìn),一個(gè)事件出,兩個(gè)可變化字段 eventInSFFloat set_fraction eventOutSFRotation value_changed exposedFieldMFFloat key 0 exposedFieldMFRotation keyValue 0010]{OrientationInterpolator{#定義一個(gè)方向內(nèi)插器節(jié)點(diǎn)keyISkeyset_fractionISset_fractionkeyValueISkeyValuevalue_changedISvalue_changed}}PROTOKfaAnimation[#定義一個(gè)觸發(fā)器節(jié)點(diǎn)其中包括兩個(gè)固定字段 fieldSFNode timeSensor NULL fieldMFNode fieldInterps [] ]{Group{}}自定義節(jié)點(diǎn)的目的是使要調(diào)用的節(jié)點(diǎn)整合在一起,以便直接調(diào)用。在使用這些節(jié)點(diǎn)時(shí)如同其他節(jié)點(diǎn)一樣可以直接使用,這樣大大方便了編程程序員的程序設(shè)計(jì),也使編程更加靈活。5.3動(dòng)畫(huà)設(shè)計(jì)在現(xiàn)實(shí)社會(huì)中,萬(wàn)物都是變化著的同樣網(wǎng)絡(luò)世界之所以讓人迷戀,很大一個(gè)原因就是因?yàn)橛袆?dòng)畫(huà)存在,這樣的網(wǎng)絡(luò)才變得生動(dòng)。在VRML中實(shí)現(xiàn)動(dòng)畫(huà)效果可以利用VRML自帶的6個(gè)控制動(dòng)畫(huà)的插補(bǔ)器來(lái)實(shí)現(xiàn)。另外還可以用內(nèi)嵌的java或javascript語(yǔ)言來(lái)實(shí)現(xiàn)。利用OrientationInterpolator實(shí)現(xiàn)物體的旋轉(zhuǎn)。Group{ children[ DEF TTransform {#定義一個(gè)型體為Box translation 000 childrenShape{ appearanceAppearance{ materialMaterial{ diffuseColor100 } } geometryBox{}} } DEFTouchboxTouchSensor{}]}DEFOIOrientationInterpolator{ key [51]#設(shè)置每一幀實(shí)現(xiàn)的時(shí)間keyValue[0100,0101.57,0103.14,0104.71,0106.28]}#設(shè)置每一幀轉(zhuǎn)過(guò)的角度DEF TISTimeSensor{cycleInterval4loopTRUE}ROUTETouchbox.isActiveTOTIS.loop#當(dāng)Touchbox被激活時(shí)間觸發(fā)器TIS被設(shè)置為循環(huán)ROUTETouchbox.touchTimeTOTIS.startTimeROUTETIS.fraction_changedTOOI.set_fraction#時(shí)間觸發(fā)器每次變換觸發(fā)了方向變換觸發(fā)器ROUTEOI.value_changedTOT.set_rotation#方向變化觸發(fā)器的值的變換使得整個(gè)物體產(chǎn)生了旋轉(zhuǎn)腳本設(shè)計(jì)利用腳本語(yǔ)言可以實(shí)現(xiàn)各種復(fù)雜的動(dòng)作DEF boxTransform{ children[ Shape{#定義一個(gè)物體 appearanceAppearance{ materialMaterial{ diffuseColor0.3060.9840.110 } } geometryBox{}} DEF touchTouchSensor{} ]}DEF clockTimeSensor{#設(shè)置時(shí)間觸發(fā)器 cycleInterval2 loopTRUE}DEF wayScript{#定義一個(gè)名為way的Script節(jié)點(diǎn) eventIn SFTimeclicked#設(shè)置一個(gè)事件進(jìn),包含一個(gè)單個(gè)時(shí)間的單值字段,其變量名為clicked eventIn SFFloat now#設(shè)置一個(gè)事件進(jìn),包含一個(gè)單精度浮點(diǎn)值,其變量名為now eventOutSFRotation rotation#設(shè)置一個(gè)事件出,包含0個(gè)或多個(gè)任意旋轉(zhuǎn)的多值字段,變量名為rotation eventOutSFVec3ftranslation#設(shè)置一個(gè)事件出,包含一個(gè)三維向量的單值字段,變量名為translation eventIn SFVec3fscale#設(shè)置一個(gè)事件進(jìn),包含一個(gè)三維向量的單值字段,變量名為scale fieldSFBoolonFALSE設(shè)置一個(gè)固定字段,包含一個(gè)布爾向量 url"javascript: functionintialize()//初始化變量 { rotation[0]=0; rotation[1]=0; rotation[2]=1; rotation[3]=0; on=0; } functionclicked(time){// 點(diǎn)擊box on=TRUE;//將on設(shè)置為T(mén)RUE } functionnow(fraction){ if(on)//判斷如果開(kāi), { rotation[3]=(fraction*6.28);//fraction每一幀的變換產(chǎn)生了旋轉(zhuǎn) } }"}ROUTEtouch.touchTimeTOclock.startTime#設(shè)置click事件ROUTEtouch.touchTimeTOway.clicked#click事件觸發(fā)了way的click事件ROUTEclock.fraction_changedTO way.now#時(shí)間觸發(fā)器里的每一幀的變換觸發(fā)了now函數(shù)ROUTEway.rotationTObox.set_rotationROUTEway.translationTObox.set_translation5.5多媒體設(shè)計(jì)一個(gè)多媒體應(yīng)用程序應(yīng)該能夠?qū)⑽淖?、圖形、圖片、聲音及影像結(jié)合在一起,利用VRMl可以編寫(xiě)具多媒體效果的程序從而實(shí)現(xiàn)三維世界的文字、圖形、圖片、聲音及影像的結(jié)合,以下是實(shí)現(xiàn)在一個(gè)正方體上實(shí)現(xiàn)其六個(gè)面產(chǎn)生不同影像效果的多媒體設(shè)計(jì)DEFT2_100Transform{ children [ Shape{appearance Appearance{#一個(gè)面里加入一個(gè)mpeg文件 material Material{} texture DEFMT1MovieTexture{ url "1.mpeg" loop FALSE startTime 0}} geometry DEF_102IndexedFaceSet{#定義1個(gè)面 coord Coordinate{ point [-2-22,2-22,222,-222] } coordIndex [0,1,2,3,-1] solid FALSE normalIndex [] texCoordIndex [] } } Shape{appearance Appearance{ material Material{} texture DEFMT2_103MovieTexture{ url "2.mpeg" loop FALSE startTime 0}} geometry DEF_104IndexedFaceSet{ coord Coordinate{ point [222,22-2,2-2-2,2-22]} coordIndex [0,1,2,3,-1] solid FALSE normalIndex [] texCoordIndex []}} Shape{appea
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)餐飲設(shè)備市場(chǎng)發(fā)展趨勢(shì)規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)鋼制車(chē)輪行業(yè)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)采暖散熱器行業(yè)十三五規(guī)劃及發(fā)展前景分析報(bào)告
- 2025-2030年中國(guó)通信繼電器市場(chǎng)供需狀況及投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)船舶涂料產(chǎn)業(yè)運(yùn)營(yíng)狀況與發(fā)展趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)臭氧治療儀市場(chǎng)需求狀況及發(fā)展?jié)摿Ψ治鰣?bào)告
- 2025-2030年中國(guó)聚酯多元醇行業(yè)市場(chǎng)現(xiàn)狀分析規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)網(wǎng)絡(luò)借貸市場(chǎng)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)精制棉市場(chǎng)運(yùn)營(yíng)現(xiàn)狀及投資前景規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)眼視光行業(yè)發(fā)展趨勢(shì)規(guī)劃研究報(bào)告
- “供應(yīng)商融資安排”會(huì)計(jì)列報(bào)、披露問(wèn)題研究
- 顱內(nèi)動(dòng)脈動(dòng)脈瘤介入治療臨床路徑
- DB32∕T 2882-2016 城市軌道交通橋隧結(jié)構(gòu)養(yǎng)護(hù)技術(shù)規(guī)程
- 氮化硅結(jié)構(gòu)與性能
- 《現(xiàn)代漢語(yǔ)語(yǔ)法》PPT課件(完整版)
- 性病實(shí)驗(yàn)室檢測(cè)與質(zhì)量管理
- 高樁碼頭施工組織設(shè)計(jì)(福建)
- 這一封書(shū)信來(lái)得巧
- 監(jiān)獄服裝加工企業(yè)開(kāi)展全面
- 標(biāo)書(shū)密封條格式模版(共19頁(yè))
- 小學(xué)一年級(jí)硬筆書(shū)法入門(mén)(課堂PPT)
評(píng)論
0/150
提交評(píng)論