摘要:以一個(gè)物理電路虛擬實(shí)驗(yàn)系統(tǒng)為基礎(chǔ),介紹了VRML及其實(shí)現(xiàn)原理,并詳細(xì)論述了虛擬實(shí)驗(yàn)系統(tǒng)的創(chuàng)建過程和創(chuàng)建方法。
關(guān)鍵詞:虛擬現(xiàn)實(shí);VRML;虛擬實(shí)驗(yàn)
0 引言
隨著網(wǎng)絡(luò)技術(shù)和虛擬現(xiàn)實(shí)技術(shù)的迅猛發(fā)展和普及,遠(yuǎn)程教育得
到了強(qiáng)大的技術(shù)支持,使網(wǎng)絡(luò)虛擬實(shí)驗(yàn)實(shí)現(xiàn)了對傳統(tǒng)實(shí)驗(yàn)的有力補(bǔ)允,實(shí)現(xiàn)了其時(shí)間上的拓展和空間上的延伸。目前的虛擬實(shí)驗(yàn)多為二維演示實(shí)驗(yàn),在實(shí)驗(yàn)真實(shí)感、
交互性和教學(xué)效果等方面與真實(shí)實(shí)驗(yàn)相差甚遠(yuǎn)。VRML(Virtual Reality Modeling Language)是開放的、可擴(kuò)展的、工業(yè)標(biāo)準(zhǔn)的虛擬現(xiàn)實(shí)描述語言,它能夠在Web上創(chuàng)建可導(dǎo)航的、超鏈接的三維虛擬現(xiàn)實(shí)空間,并使用戶與場景進(jìn)行實(shí)時(shí)交互,感知和操作虛擬對象,因而能夠提供更佳的性能和更好的教學(xué)效果。
1 虛擬現(xiàn)實(shí)與VRML
虛擬現(xiàn)實(shí)(Virtual Reality)是一項(xiàng)綜合集成人——機(jī)界面交互技術(shù),它利用計(jì)算機(jī)生成具有表面色彩的立體圖形模擬現(xiàn)實(shí)環(huán)境,通過多種傳感設(shè)備使用戶融入到該環(huán)境中,并與該環(huán)境中的對象進(jìn)行自然的、實(shí)時(shí)的交互,從而使用戶產(chǎn)生一種沉浸在虛擬環(huán)境中的真實(shí)感覺。
VRML作為一種與互聯(lián)網(wǎng)結(jié)合,用來描述三維交互世界的程序語言,可應(yīng)用于創(chuàng)建虛擬現(xiàn)實(shí)的對象、景象和展示模型等。VRML的工作原理是用文本信息描述三
維場景,在Internet網(wǎng)上傳輸,在本地機(jī)上由VRML瀏覽器解釋生成三維場景,解釋生成的標(biāo)準(zhǔn)規(guī)范即是VRML規(guī)范,而把復(fù)雜的處理任務(wù)交給本地機(jī)
從而減輕了網(wǎng)路的負(fù)荷。
2 實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
2.1 虛擬場景的建立
VRML語言本身可以進(jìn)行三維建模,但是它的標(biāo)記語言特性使得建立三維虛擬場景比較麻煩,尤其是對一些龐大、復(fù)雜、要求精細(xì)逼真的場景。一種比較通用的方
法是用3D Max這樣的三維建模軟件來建立靜態(tài)虛擬場景,然后再導(dǎo)入到VRML編輯器中添加動態(tài)效果和交互控制。
但是,一般建模軟件建立的場景文件都很大,這對網(wǎng)絡(luò)傳輸是不利的,必須進(jìn)行場景優(yōu)化。通常我們可以采用以下幾種方法進(jìn)行優(yōu)化。
①利用VRML 中的LOD節(jié)點(diǎn)(Level of Detail ,細(xì)節(jié)層次)。LOD節(jié)點(diǎn)主要是以視覺效應(yīng)為每個(gè)物體建立多個(gè)相似模型,
根據(jù)距離由遠(yuǎn)及近依次使用從粗到細(xì)的不同模型描述物體, 減少不需要的模型細(xì)節(jié),
從而加速模型的繪制,達(dá)到優(yōu)化處理的目的。②多使用DEF/USE方式。對于在場景中多次使用的對象,可在對象首次使用時(shí)用DEF給物體命名,以后僅需通
過“USE+對象名”即可引用該物體。這種方法不但能夠提高代碼重用度,減少文件體積,還可以減少場景中要繪制的多邊形,提高場景生成速度。③多使用
PROTO原型定義。使用原型可以獲得與DEF/USE方式相同效果,此外它還有動畫效果,能進(jìn)行交互控制,其使用更為靈活,功能更為強(qiáng)大。④復(fù)雜模型盡
可能用簡單模型拼裝。用布爾運(yùn)算得到的復(fù)雜模型不利于修改和貼圖,為此可用Box、Cone、Cylinder、Sphere這些簡單模型來構(gòu)建復(fù)雜模
型,這樣既可以節(jié)省在網(wǎng)絡(luò)中的傳輸時(shí)間,也有利于瀏覽器的優(yōu)化。⑤利用壓縮工具壓縮VRML文件。在VRML的構(gòu)建過程中難免會出現(xiàn)一些冗余信息,通過壓
縮工具,可以刪掉冗余空間,減少文件體積。
2.2 自動演示功能實(shí)現(xiàn) 自動演示功能主要用來演示實(shí)驗(yàn)的全過程,以幫助用戶了解實(shí)驗(yàn)。例如,本系統(tǒng)中的一個(gè)基本實(shí)驗(yàn)就是通過電源開關(guān)的開、合控制燈泡的亮滅。自動演示功能可利用預(yù)定義動畫來實(shí)現(xiàn),這主要涉及下面的幾個(gè)功能節(jié)點(diǎn)。
①傳感器Sensor。傳感器是虛擬場景中的動作感知器,利用它來感知場景中各種物體的動作。本例中可以為電源開關(guān)添加感知鼠標(biāo)單擊動作的接觸傳感器
TouchSensor和自動時(shí)間控制的時(shí)間傳感器TimeSensor。②插補(bǔ)器Interpolator。插補(bǔ)器是實(shí)現(xiàn)動畫效果必不可少的節(jié)點(diǎn),它給
出了動畫過程中各個(gè)時(shí)刻變化量的參數(shù)值。電源開關(guān)的開合和電流表指針的轉(zhuǎn)動都是旋轉(zhuǎn)運(yùn)動,可以為它們添加插補(bǔ)器
OrientationInterpolator,而燈泡亮度的變化要由顏色插補(bǔ)器ColorInterpolator來實(shí)現(xiàn)。③ROUTE命令。
ROUTE命令根據(jù)動畫響應(yīng)的順序?qū)⒏鱾鞲衅鳌⒉逖a(bǔ)器、以及要控制的節(jié)點(diǎn)串連起來共同實(shí)現(xiàn)一個(gè)效果。
2.3
使用java script實(shí)現(xiàn)交互功能
交互功能要求系統(tǒng)根據(jù)用戶對場景中不同節(jié)點(diǎn)的操作做出不同的響應(yīng),這就不能通過預(yù)定義的方式來實(shí)現(xiàn),而必須采用更復(fù)雜的程序代碼進(jìn)行處理。VRML中常用
的腳本語言是JavaScrip。此外,對于一些需要與網(wǎng)頁進(jìn)行信息傳遞的場景,還可以利用網(wǎng)頁中的Java
Applet來實(shí)現(xiàn)更為復(fù)雜的控制功能。Java EAI(External Authoring
Interface,外部創(chuàng)作接口)是增強(qiáng)VRML場景與外部環(huán)境通信聯(lián)系和融合能力的一個(gè)高層次的Java類包,它使得外部的Java
Applet程序可以利用VRML的事件模型訪問和控制VRML場景中的節(jié)點(diǎn)。
本例中采用java script腳本的形式進(jìn)行代碼編程來判斷電源開關(guān)開、合狀態(tài)并確定其轉(zhuǎn)向動畫。最后腳本代碼要用ROUTE命令與相關(guān)傳感器、插補(bǔ)器、和節(jié)點(diǎn)串連起來,形成一條動畫通路。
2.4 將VRML場景嵌入網(wǎng)頁
利用HTML語言的EMBED元素可以實(shí)現(xiàn)VRML和HTML語言的結(jié)合。網(wǎng)頁中嵌入虛擬場景文件,能將三維立體信息和二維平面信息融合在同一個(gè)網(wǎng)頁之
中,網(wǎng)頁部分既可以對三維立體場景進(jìn)行解釋、說明,又能夠作為用戶與場景交互的界面,彌補(bǔ)三維場景在文本方面的不足。
3 結(jié)束語
VRML語言具有交互性、分布式、場景逼真、易于實(shí)現(xiàn)等特性,是開發(fā)基于Internet虛擬實(shí)驗(yàn)系統(tǒng)的首選。利用VRML構(gòu)建的虛擬實(shí)驗(yàn)系統(tǒng)能夠模擬出
逼真的實(shí)驗(yàn)場景,并提供與實(shí)際實(shí)驗(yàn)相似的實(shí)踐體驗(yàn),不但可以提高實(shí)驗(yàn)的效率和效果,拓寬學(xué)生實(shí)驗(yàn)學(xué)習(xí)的途徑,而且能夠更好地完善實(shí)驗(yàn)教學(xué)的結(jié)構(gòu),激發(fā)學(xué)生
的創(chuàng)造性思維。
參考文獻(xiàn):
[1]吳春華.虛擬實(shí)驗(yàn)教學(xué)在現(xiàn)代遠(yuǎn)程教育中的應(yīng)用研究[D]. 長沙:中南大學(xué),2006.
[2]張紅軍,吳志剛.VRML與JAVA在網(wǎng)絡(luò)虛擬實(shí)驗(yàn)中應(yīng)用[J]. 實(shí)驗(yàn)室研究與探索,2006,25(9):1081-1085
本站論文資源均為來自網(wǎng)絡(luò)轉(zhuǎn)載,免費(fèi)提供給廣大作者參考,不進(jìn)行任何贏利,如有版權(quán)問題,請聯(lián)系管理員刪除! 快速論文發(fā)表網(wǎng)(www.ssr18.com)本中心和國內(nèi)數(shù)百家期刊雜志社有良好的合作關(guān)系,可以幫客戶代發(fā)論文投稿.
投稿郵箱:ksfbw@126.com
客服Q Q:
82702382
聯(lián)系電話:15295038833
本站論文資源均為來自網(wǎng)絡(luò)轉(zhuǎn)載,免費(fèi)提供給廣大作者參考,不進(jìn)行任何贏利,如有版權(quán)問題,請聯(lián)系管理員刪除!