張向華,董曉英,葉 霞,蔣琴仙,畢 偉
(江蘇技術(shù)師范學(xué)院 機(jī)械與汽車(chē)工程學(xué)院,江蘇 常州 213001)
隨著計(jì)算機(jī)技術(shù)、多媒體技術(shù)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,以網(wǎng)絡(luò)為基礎(chǔ)的遠(yuǎn)程教育在現(xiàn)代教學(xué)中占據(jù)越來(lái)越重要的地位。現(xiàn)代遠(yuǎn)程教育是隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、現(xiàn)代信息技術(shù)的迅速發(fā)展而產(chǎn)生的一種新型的教育形式,這種以計(jì)算機(jī)網(wǎng)絡(luò)等高科技手段為載體的雙向交互式教學(xué)形式在現(xiàn)代教育中扮演了重要角色[1]。如何在網(wǎng)絡(luò)環(huán)境下為學(xué)習(xí)者提供豐富的多媒體教學(xué)資源和有效的學(xué)習(xí)情境,是遠(yuǎn)程教育中首先面臨的主要問(wèn)題。然而傳統(tǒng)基于網(wǎng)絡(luò)的遠(yuǎn)程教育平臺(tái)在其發(fā)展過(guò)程中主要受到三個(gè)因素的制約:
一是,網(wǎng)絡(luò)帶寬的瓶頸極大地限制了教學(xué)視頻音頻的傳輸,使得教學(xué)效果下降。
二是,利用視頻進(jìn)行網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué)時(shí)學(xué)生無(wú)法親自動(dòng)手,實(shí)驗(yàn)效果較差。
三是,現(xiàn)有的一般網(wǎng)絡(luò)教學(xué)主要是用動(dòng)態(tài)網(wǎng)頁(yè)、Flash、流媒體等技術(shù)展示和呈現(xiàn)知識(shí)信息,在真實(shí)環(huán)境的營(yíng)造、實(shí)時(shí)交互性等方面存在一些不足,無(wú)法提高學(xué)生學(xué)習(xí)的積極性和主動(dòng)性[2]。
虛擬現(xiàn)實(shí)技術(shù)的出現(xiàn),為解決遠(yuǎn)程教育中所存在的這些制約因素提供了幫助。虛擬現(xiàn)實(shí)技術(shù)具有沉浸、交互和多感知三大特點(diǎn),其能夠?yàn)閷W(xué)生提供生動(dòng)、逼真的學(xué)習(xí)環(huán)境,學(xué)生能夠成為虛擬環(huán)境的一名參與者,在虛擬環(huán)境中扮演一個(gè)角色,這對(duì)調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,突破教學(xué)的重點(diǎn)、難點(diǎn),培養(yǎng)學(xué)生的技能都將起到積極的作用。為此,文章在介紹基于VRML 的虛擬現(xiàn)實(shí)技術(shù)的基礎(chǔ)上,研究了虛擬現(xiàn)實(shí)技術(shù)在網(wǎng)絡(luò)教學(xué)資源設(shè)計(jì)和開(kāi)發(fā)中的具體應(yīng)用, 并探討了其中的一些關(guān)鍵技術(shù)。
虛擬現(xiàn)實(shí)技術(shù)(Virtual Reality)原本是美國(guó)軍方開(kāi)發(fā)研究出來(lái)的一項(xiàng)電腦技術(shù),其利用三維圖形生成技術(shù)、多傳感交互技術(shù)以及高分辨顯示技術(shù),生成三維逼真的虛擬環(huán)境,使用者戴上特殊的頭盔、數(shù)據(jù)手套等傳感設(shè)備,或利用鍵盤(pán)、鼠標(biāo)等輸入設(shè)備,便可以進(jìn)入虛擬空間,成為虛擬環(huán)境的一員,進(jìn)行實(shí)時(shí)交互,感知和操作虛擬世界中的各種對(duì)象,從而獲得身臨其境的感受和體會(huì)[3]。
虛擬現(xiàn)實(shí)建模語(yǔ)言VRML(Virtual Reality Modeling language,以下簡(jiǎn)稱VRML)是一種與Internet 結(jié)合,用來(lái)描述三維交互虛擬世界的程序語(yǔ)言,可應(yīng)用于創(chuàng)建虛擬現(xiàn)實(shí)的對(duì)象、場(chǎng)景和展示模型等。通過(guò)瀏覽器,用戶可以觀賞到由VRML 創(chuàng)建的三維虛擬現(xiàn)實(shí),而不再只是二維的圖形或圖像,并能夠在三維世界中進(jìn)行實(shí)時(shí)移動(dòng)和實(shí)時(shí)操縱。基于VRML 的虛擬現(xiàn)實(shí)只是一種桌面虛擬現(xiàn)實(shí),但由于其結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn),制作成本低,因此將其應(yīng)用于遠(yuǎn)程教育具有可行性。
工程圖學(xué)課程是工科院校一門(mén)重要的專業(yè)基礎(chǔ)課,是培養(yǎng)學(xué)生的空間思維能力、空間想象能力、形體構(gòu)形能力以及閱讀和繪制工程圖樣能力的一門(mén)應(yīng)用性學(xué)科。其研究的主要對(duì)象是圖形,教學(xué)中心是解決畫(huà)圖和讀圖的問(wèn)題,教學(xué)重點(diǎn)和難點(diǎn)是培養(yǎng)學(xué)生的空間想象和構(gòu)思能力。在傳統(tǒng)的工程圖學(xué)教學(xué)中,常用直觀的教具來(lái)輔助教學(xué),但在遠(yuǎn)程教育中,學(xué)生主要依靠工程圖學(xué)課程網(wǎng)站來(lái)輔助學(xué)習(xí)。目前的許多工程圖學(xué)課程網(wǎng)站主要是由靜態(tài)網(wǎng)頁(yè)組成,網(wǎng)頁(yè)內(nèi)容主要是文字、圖形和圖像,表現(xiàn)形式單一。網(wǎng)頁(yè)里也用到了一些動(dòng)畫(huà),但主要是GIF 和Flash 等二維平面動(dòng)畫(huà),這些動(dòng)畫(huà)缺乏直觀表達(dá)能力,這樣就限制了遠(yuǎn)程教學(xué)的教學(xué)效果。為此,可以在網(wǎng)頁(yè)中插入一些具有三維表現(xiàn)力的圖形和動(dòng)畫(huà)文件。
(1)基于VRML 的模型展示
在工程圖學(xué)的教學(xué)過(guò)程中,經(jīng)常會(huì)講解各種不同形體的表達(dá)。在以前的遠(yuǎn)程教學(xué)中主要是結(jié)合形體的圖片來(lái)說(shuō)明,但圖片的表現(xiàn)力有限,對(duì)于復(fù)雜的形體,其內(nèi)部結(jié)構(gòu)不能很好的表達(dá)。為此,可在網(wǎng)頁(yè)中加入VRML 模型,這些模型可以嵌入網(wǎng)頁(yè),如圖1所示,也可以采用鏈接的方式單獨(dú)打開(kāi),如圖2 所示。學(xué)生只需在瀏覽器中安裝有關(guān)的插件就可以瀏覽到網(wǎng)頁(yè)上的虛擬模型,并且可以利用鼠標(biāo)對(duì)模型進(jìn)行旋轉(zhuǎn)、移動(dòng)、縮放等多種操作,對(duì)模型進(jìn)行全方位的觀察[4]。

圖1 嵌入式模型

圖2 鏈接模型
(2)基于VRML 的三維動(dòng)畫(huà)
在工程圖學(xué)課程的遠(yuǎn)程教學(xué)中,還可以利用三維動(dòng)畫(huà)來(lái)形象的展示其中的一些內(nèi)容。例如,在介紹立體的截交線和相貫線時(shí),可以利用截切的動(dòng)畫(huà)來(lái)展示截交線的形成,如圖3 所示;在介紹用形體分析法來(lái)分析組合體時(shí),也可以利用三維動(dòng)畫(huà)來(lái)展示,如圖4 所示。

圖3 圓錐的截切

圖4 形體分析法分析組合體
(4)基于VRML 的裝配演示
裝配圖是工程圖學(xué)中的重要內(nèi)容之一。在講授裝配體的表達(dá)時(shí),需要講解裝配體的安裝與拆卸過(guò)程,利用靜態(tài)圖片不能展示該過(guò)程,基于VRML 的虛擬模型可以全方位的展示整個(gè)拆裝過(guò)程,如圖5 所示。

圖5 齒輪泵的裝配
機(jī)械原理課程是機(jī)械類專業(yè)的一門(mén)重要的專業(yè)基礎(chǔ)課,在課程中會(huì)介紹到各種不同的機(jī)構(gòu)。在傳統(tǒng)的教學(xué)中,會(huì)利用實(shí)驗(yàn)室的陳列柜來(lái)展示不同的機(jī)構(gòu),然后安排學(xué)生去學(xué)習(xí)了解。但這種教學(xué)方法在遠(yuǎn)程教學(xué)中無(wú)法實(shí)現(xiàn),如果直接用文字來(lái)解釋有很難將各種機(jī)構(gòu)的工作原理解釋清楚,為此,可以利用VRML 動(dòng)畫(huà)模型來(lái)進(jìn)行展示,非常直觀,學(xué)生也能很快接受,如圖6 所示。

圖6 機(jī)械原理中機(jī)構(gòu)的展示
系統(tǒng)在設(shè)計(jì)中選用以瀏覽器/ 服務(wù)器(Browser/Server)模式為基礎(chǔ)的體系結(jié)構(gòu),如圖7 所示。瀏覽器端需安裝VRML 插件才能顯示虛擬模型;Web 服務(wù)器接收瀏覽器HTTP 請(qǐng)求并傳給應(yīng)用服務(wù)器;應(yīng)用服務(wù)器將請(qǐng)求轉(zhuǎn)換為數(shù)據(jù)庫(kù)能辨識(shí)的SQL 語(yǔ)句,再向數(shù)據(jù)庫(kù)服務(wù)器發(fā)出請(qǐng)求;數(shù)據(jù)庫(kù)服務(wù)器負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)、維護(hù)、處理等,并將結(jié)果返回應(yīng)用服務(wù)器;應(yīng)用服務(wù)器對(duì)結(jié)果進(jìn)行分析處理后發(fā)送給Web 服務(wù)器;最后由Web 服務(wù)器返回給Web 瀏覽器[5]。基于此結(jié)構(gòu),用戶可通過(guò)帶有VRML 插件的瀏覽器查看網(wǎng)頁(yè)中的虛擬模型。

圖7 系統(tǒng)體系結(jié)構(gòu)
根據(jù)模型的復(fù)雜程度, 可以采用不同的建模方法。對(duì)于簡(jiǎn)單的模型,可以直接編程建模。編程的方法有兩種:第一種是直接利用記事本編寫(xiě)程序,然后將文件保存為.wrl 格式文件;第二種方法是利用vrmlpad 軟件編程。對(duì)于復(fù)雜的模型,可先利用專業(yè)的三維設(shè)計(jì)軟件 (如UG、Solidworks、Catia、Pro/ E、Solid-Edge 等)建立模型,然后再將其導(dǎo)出為VRML 格式的文件。導(dǎo)出的文件采用的是默認(rèn)的背景和視點(diǎn),可利用記事本對(duì)導(dǎo)出文件進(jìn)行編輯,增加視點(diǎn)和背景,得到所需要的模型文件。一般都采用第二種建模方法。
VRML 中的動(dòng)畫(huà)是依靠一個(gè)給定的時(shí)間傳感器和一系列各種各樣的內(nèi)插節(jié)點(diǎn)來(lái)控制場(chǎng)景中的各種動(dòng)作。其基本的方法就是:時(shí)間傳感器給出一個(gè)控制動(dòng)畫(huà)效果的時(shí)鐘,時(shí)鐘包含了動(dòng)畫(huà)效果的開(kāi)始時(shí)間、停止時(shí)間、時(shí)間間隔和是否循環(huán)等動(dòng)畫(huà)控制參數(shù)。然后通過(guò)時(shí)鐘的輸出在虛擬世界中驅(qū)動(dòng)各種內(nèi)插節(jié)點(diǎn)產(chǎn)生各種相應(yīng)的動(dòng)畫(huà)效果,而內(nèi)插節(jié)點(diǎn)中將給出各種動(dòng)畫(huà)效果的關(guān)鍵點(diǎn)和關(guān)鍵值,VRML 瀏覽器將自動(dòng)地根據(jù)這些關(guān)鍵點(diǎn)通過(guò)線性插值的方法來(lái)完成整個(gè)動(dòng)畫(huà)過(guò)程[6]。
讓用戶參與動(dòng)畫(huà)的過(guò)程就是交互,VRML 的交互通過(guò)檢測(cè)器(sensor,或稱感應(yīng)器)實(shí)現(xiàn)[7]。在VRML 中,有一組具有動(dòng)態(tài)、交互和感知特性的節(jié)點(diǎn),可用于交互和動(dòng)畫(huà)的實(shí)現(xiàn)。其中包括[8]:
(1)TimeSensor 時(shí)間傳感器節(jié)點(diǎn):時(shí)間傳感器作為動(dòng)畫(huà)行為的驅(qū)動(dòng),創(chuàng)建一個(gè)虛擬時(shí)鐘,并對(duì)其他節(jié)點(diǎn)發(fā)送時(shí)間值,控制VRML 立體空間的動(dòng)態(tài)對(duì)象的開(kāi)始、變化和結(jié)束過(guò)程的時(shí)間,實(shí)現(xiàn)空間物體造型的移動(dòng)、變色、變形等自動(dòng)變化。
(2)PositionInterpolator 位置插補(bǔ)器節(jié)點(diǎn):位置插補(bǔ)器中定義了關(guān)鍵點(diǎn)(Key)和對(duì)應(yīng)的關(guān)鍵值(KeyValue),然后執(zhí)行簡(jiǎn)單的動(dòng)態(tài)計(jì)算,形成平滑的動(dòng)畫(huà)軌跡,而后在時(shí)間傳感器和位置傳感器之間添加路由,在位置傳感器和模型之間添加路由,從而實(shí)現(xiàn)動(dòng)畫(huà)設(shè)計(jì)。
(3)觸動(dòng)檢測(cè)器節(jié)點(diǎn):接觸檢測(cè)器(touchSensor)創(chuàng)建用戶感應(yīng)物體功能;鄰近檢測(cè)器(proximitySensor)自動(dòng)感應(yīng)用戶進(jìn)入的特定區(qū)域;時(shí)間檢測(cè)器(timeSensor)控制事件的啟動(dòng)和停止。
(4)感知節(jié)點(diǎn):當(dāng)特定部分變成用戶可見(jiàn)時(shí),可見(jiàn)性檢測(cè)器(visibilitySensor)自動(dòng)察覺(jué),用來(lái)感應(yīng)觀察者和虛擬現(xiàn)實(shí)的接觸程度。
在VRML 中的行為和交互性是通過(guò)事件驅(qū)動(dòng)機(jī)制工作的,用戶與場(chǎng)景的交互、動(dòng)畫(huà)的運(yùn)行等都是通過(guò)各種事件的發(fā)送來(lái)完成的。通過(guò)在幾個(gè)節(jié)點(diǎn)之間事件流的傳送,可以實(shí)現(xiàn)動(dòng)畫(huà)過(guò)程。
在簡(jiǎn)單的VRML 動(dòng)畫(huà)中,TimeSensor 不斷地發(fā)送出時(shí)間片信息,Interpolator 節(jié)點(diǎn)接收到時(shí)間片后根據(jù)設(shè)定好的關(guān)鍵點(diǎn),通過(guò)插值計(jì)算送出動(dòng)畫(huà)數(shù)據(jù),這種動(dòng)畫(huà)數(shù)據(jù)被送給對(duì)象節(jié)點(diǎn)去改變某些對(duì)象屬性,如空間位置、旋轉(zhuǎn)角度等,從而生成所需要的動(dòng)畫(huà)。但遇到復(fù)雜的動(dòng)畫(huà)設(shè)計(jì)時(shí),單用插值器是不能實(shí)現(xiàn)的,所以VRML 提供了另一種機(jī)制,即用Script 節(jié)點(diǎn)取代插值器節(jié)點(diǎn),在Script 節(jié)點(diǎn)中可以加入代碼,這些代碼可以根據(jù)不同動(dòng)畫(huà)的需求生成并輸出動(dòng)畫(huà)數(shù)據(jù)[9]。
利用基于VRML 的虛擬現(xiàn)實(shí)技術(shù)來(lái)開(kāi)發(fā)一些遠(yuǎn)程教育教學(xué)資源,極大的增強(qiáng)了遠(yuǎn)程教育中學(xué)生身臨其境的參與感,可以大大的激發(fā)學(xué)生的學(xué)習(xí)興趣,提高學(xué)習(xí)效率。
[1]瞿 暢,王君澤. 網(wǎng)絡(luò)教學(xué)資源開(kāi)發(fā)中的Web3D 技術(shù)應(yīng)用研究[J].南通大學(xué)學(xué)報(bào)(自然科學(xué)版),2007,6(3):90-93.
[2]許愛(ài)軍,張文金,易 丹. 基于虛擬現(xiàn)實(shí)技術(shù)的遠(yuǎn)程教育平臺(tái)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2007,(8):23-26.
[3]方德葵.虛擬大學(xué)-現(xiàn)代遠(yuǎn)程教育理論與實(shí)踐[M].北京:中國(guó)廣播電視出版社,2003.
[4]張向華,董曉英.VRML 語(yǔ)言優(yōu)化圖視思維網(wǎng)絡(luò)課件的研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2006,27(14):2573-2574.
[5]徐素霞,馬文婕. 虛擬現(xiàn)實(shí)技術(shù)及其在遠(yuǎn)程教學(xué)中的應(yīng)用[J].軟件導(dǎo)刊,2006,(2):28-30.
[6]王巧玉,田 凌.基于VRML 模型的協(xié)同裝配工藝規(guī)劃仿真方法[J].高技術(shù)通訊,2006,16(8):802-807.
[7]董艇艦,王太勇,蓋 青,等.基于VRML 的虛擬模型構(gòu)建和網(wǎng)絡(luò)開(kāi)發(fā)[J].天津理工大學(xué)學(xué)報(bào),2005,21(4):58-60.
[8]汪興謙,牛燕明. VRML 與Java 編程實(shí)例詳解[M]. 北京:中國(guó)水利水電出版社,2002.
[9]張紅燕.遠(yuǎn)程虛擬實(shí)驗(yàn)中交互與動(dòng)畫(huà)的實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2006,(4):40-42.