張向華,董曉英,葉 霞,蔣琴仙,畢 偉
(江蘇技術師范學院 機械與汽車工程學院,江蘇 常州 213001)
隨著計算機技術、多媒體技術和網絡技術的飛速發(fā)展,以網絡為基礎的遠程教育在現(xiàn)代教學中占據越來越重要的地位?,F(xiàn)代遠程教育是隨著計算機網絡技術、現(xiàn)代信息技術的迅速發(fā)展而產生的一種新型的教育形式,這種以計算機網絡等高科技手段為載體的雙向交互式教學形式在現(xiàn)代教育中扮演了重要角色[1]。如何在網絡環(huán)境下為學習者提供豐富的多媒體教學資源和有效的學習情境,是遠程教育中首先面臨的主要問題。然而傳統(tǒng)基于網絡的遠程教育平臺在其發(fā)展過程中主要受到三個因素的制約:
一是,網絡帶寬的瓶頸極大地限制了教學視頻音頻的傳輸,使得教學效果下降。
二是,利用視頻進行網絡實驗教學時學生無法親自動手,實驗效果較差。
三是,現(xiàn)有的一般網絡教學主要是用動態(tài)網頁、Flash、流媒體等技術展示和呈現(xiàn)知識信息,在真實環(huán)境的營造、實時交互性等方面存在一些不足,無法提高學生學習的積極性和主動性[2]。
虛擬現(xiàn)實技術的出現(xiàn),為解決遠程教育中所存在的這些制約因素提供了幫助。虛擬現(xiàn)實技術具有沉浸、交互和多感知三大特點,其能夠為學生提供生動、逼真的學習環(huán)境,學生能夠成為虛擬環(huán)境的一名參與者,在虛擬環(huán)境中扮演一個角色,這對調動學生的學習積極性,突破教學的重點、難點,培養(yǎng)學生的技能都將起到積極的作用。為此,文章在介紹基于VRML 的虛擬現(xiàn)實技術的基礎上,研究了虛擬現(xiàn)實技術在網絡教學資源設計和開發(fā)中的具體應用, 并探討了其中的一些關鍵技術。
虛擬現(xiàn)實技術(Virtual Reality)原本是美國軍方開發(fā)研究出來的一項電腦技術,其利用三維圖形生成技術、多傳感交互技術以及高分辨顯示技術,生成三維逼真的虛擬環(huán)境,使用者戴上特殊的頭盔、數據手套等傳感設備,或利用鍵盤、鼠標等輸入設備,便可以進入虛擬空間,成為虛擬環(huán)境的一員,進行實時交互,感知和操作虛擬世界中的各種對象,從而獲得身臨其境的感受和體會[3]。
虛擬現(xiàn)實建模語言VRML(Virtual Reality Modeling language,以下簡稱VRML)是一種與Internet 結合,用來描述三維交互虛擬世界的程序語言,可應用于創(chuàng)建虛擬現(xiàn)實的對象、場景和展示模型等。通過瀏覽器,用戶可以觀賞到由VRML 創(chuàng)建的三維虛擬現(xiàn)實,而不再只是二維的圖形或圖像,并能夠在三維世界中進行實時移動和實時操縱?;赩RML 的虛擬現(xiàn)實只是一種桌面虛擬現(xiàn)實,但由于其結構簡單,易于實現(xiàn),制作成本低,因此將其應用于遠程教育具有可行性。
工程圖學課程是工科院校一門重要的專業(yè)基礎課,是培養(yǎng)學生的空間思維能力、空間想象能力、形體構形能力以及閱讀和繪制工程圖樣能力的一門應用性學科。其研究的主要對象是圖形,教學中心是解決畫圖和讀圖的問題,教學重點和難點是培養(yǎng)學生的空間想象和構思能力。在傳統(tǒng)的工程圖學教學中,常用直觀的教具來輔助教學,但在遠程教育中,學生主要依靠工程圖學課程網站來輔助學習。目前的許多工程圖學課程網站主要是由靜態(tài)網頁組成,網頁內容主要是文字、圖形和圖像,表現(xiàn)形式單一。網頁里也用到了一些動畫,但主要是GIF 和Flash 等二維平面動畫,這些動畫缺乏直觀表達能力,這樣就限制了遠程教學的教學效果。為此,可以在網頁中插入一些具有三維表現(xiàn)力的圖形和動畫文件。
(1)基于VRML 的模型展示
在工程圖學的教學過程中,經常會講解各種不同形體的表達。在以前的遠程教學中主要是結合形體的圖片來說明,但圖片的表現(xiàn)力有限,對于復雜的形體,其內部結構不能很好的表達。為此,可在網頁中加入VRML 模型,這些模型可以嵌入網頁,如圖1所示,也可以采用鏈接的方式單獨打開,如圖2 所示。學生只需在瀏覽器中安裝有關的插件就可以瀏覽到網頁上的虛擬模型,并且可以利用鼠標對模型進行旋轉、移動、縮放等多種操作,對模型進行全方位的觀察[4]。
圖1 嵌入式模型
圖2 鏈接模型
(2)基于VRML 的三維動畫
在工程圖學課程的遠程教學中,還可以利用三維動畫來形象的展示其中的一些內容。例如,在介紹立體的截交線和相貫線時,可以利用截切的動畫來展示截交線的形成,如圖3 所示;在介紹用形體分析法來分析組合體時,也可以利用三維動畫來展示,如圖4 所示。
圖3 圓錐的截切
圖4 形體分析法分析組合體
(4)基于VRML 的裝配演示
裝配圖是工程圖學中的重要內容之一。在講授裝配體的表達時,需要講解裝配體的安裝與拆卸過程,利用靜態(tài)圖片不能展示該過程,基于VRML 的虛擬模型可以全方位的展示整個拆裝過程,如圖5 所示。
圖5 齒輪泵的裝配
機械原理課程是機械類專業(yè)的一門重要的專業(yè)基礎課,在課程中會介紹到各種不同的機構。在傳統(tǒng)的教學中,會利用實驗室的陳列柜來展示不同的機構,然后安排學生去學習了解。但這種教學方法在遠程教學中無法實現(xiàn),如果直接用文字來解釋有很難將各種機構的工作原理解釋清楚,為此,可以利用VRML 動畫模型來進行展示,非常直觀,學生也能很快接受,如圖6 所示。
圖6 機械原理中機構的展示
系統(tǒng)在設計中選用以瀏覽器/ 服務器(Browser/Server)模式為基礎的體系結構,如圖7 所示。瀏覽器端需安裝VRML 插件才能顯示虛擬模型;Web 服務器接收瀏覽器HTTP 請求并傳給應用服務器;應用服務器將請求轉換為數據庫能辨識的SQL 語句,再向數據庫服務器發(fā)出請求;數據庫服務器負責數據的存儲、維護、處理等,并將結果返回應用服務器;應用服務器對結果進行分析處理后發(fā)送給Web 服務器;最后由Web 服務器返回給Web 瀏覽器[5]?;诖私Y構,用戶可通過帶有VRML 插件的瀏覽器查看網頁中的虛擬模型。
圖7 系統(tǒng)體系結構
根據模型的復雜程度, 可以采用不同的建模方法。對于簡單的模型,可以直接編程建模。編程的方法有兩種:第一種是直接利用記事本編寫程序,然后將文件保存為.wrl 格式文件;第二種方法是利用vrmlpad 軟件編程。對于復雜的模型,可先利用專業(yè)的三維設計軟件 (如UG、Solidworks、Catia、Pro/ E、Solid-Edge 等)建立模型,然后再將其導出為VRML 格式的文件。導出的文件采用的是默認的背景和視點,可利用記事本對導出文件進行編輯,增加視點和背景,得到所需要的模型文件。一般都采用第二種建模方法。
VRML 中的動畫是依靠一個給定的時間傳感器和一系列各種各樣的內插節(jié)點來控制場景中的各種動作。其基本的方法就是:時間傳感器給出一個控制動畫效果的時鐘,時鐘包含了動畫效果的開始時間、停止時間、時間間隔和是否循環(huán)等動畫控制參數。然后通過時鐘的輸出在虛擬世界中驅動各種內插節(jié)點產生各種相應的動畫效果,而內插節(jié)點中將給出各種動畫效果的關鍵點和關鍵值,VRML 瀏覽器將自動地根據這些關鍵點通過線性插值的方法來完成整個動畫過程[6]。
讓用戶參與動畫的過程就是交互,VRML 的交互通過檢測器(sensor,或稱感應器)實現(xiàn)[7]。在VRML 中,有一組具有動態(tài)、交互和感知特性的節(jié)點,可用于交互和動畫的實現(xiàn)。其中包括[8]:
(1)TimeSensor 時間傳感器節(jié)點:時間傳感器作為動畫行為的驅動,創(chuàng)建一個虛擬時鐘,并對其他節(jié)點發(fā)送時間值,控制VRML 立體空間的動態(tài)對象的開始、變化和結束過程的時間,實現(xiàn)空間物體造型的移動、變色、變形等自動變化。
(2)PositionInterpolator 位置插補器節(jié)點:位置插補器中定義了關鍵點(Key)和對應的關鍵值(KeyValue),然后執(zhí)行簡單的動態(tài)計算,形成平滑的動畫軌跡,而后在時間傳感器和位置傳感器之間添加路由,在位置傳感器和模型之間添加路由,從而實現(xiàn)動畫設計。
(3)觸動檢測器節(jié)點:接觸檢測器(touchSensor)創(chuàng)建用戶感應物體功能;鄰近檢測器(proximitySensor)自動感應用戶進入的特定區(qū)域;時間檢測器(timeSensor)控制事件的啟動和停止。
(4)感知節(jié)點:當特定部分變成用戶可見時,可見性檢測器(visibilitySensor)自動察覺,用來感應觀察者和虛擬現(xiàn)實的接觸程度。
在VRML 中的行為和交互性是通過事件驅動機制工作的,用戶與場景的交互、動畫的運行等都是通過各種事件的發(fā)送來完成的。通過在幾個節(jié)點之間事件流的傳送,可以實現(xiàn)動畫過程。
在簡單的VRML 動畫中,TimeSensor 不斷地發(fā)送出時間片信息,Interpolator 節(jié)點接收到時間片后根據設定好的關鍵點,通過插值計算送出動畫數據,這種動畫數據被送給對象節(jié)點去改變某些對象屬性,如空間位置、旋轉角度等,從而生成所需要的動畫。但遇到復雜的動畫設計時,單用插值器是不能實現(xiàn)的,所以VRML 提供了另一種機制,即用Script 節(jié)點取代插值器節(jié)點,在Script 節(jié)點中可以加入代碼,這些代碼可以根據不同動畫的需求生成并輸出動畫數據[9]。
利用基于VRML 的虛擬現(xiàn)實技術來開發(fā)一些遠程教育教學資源,極大的增強了遠程教育中學生身臨其境的參與感,可以大大的激發(fā)學生的學習興趣,提高學習效率。
[1]瞿 暢,王君澤. 網絡教學資源開發(fā)中的Web3D 技術應用研究[J].南通大學學報(自然科學版),2007,6(3):90-93.
[2]許愛軍,張文金,易 丹. 基于虛擬現(xiàn)實技術的遠程教育平臺研究與實現(xiàn)[J].計算機系統(tǒng)應用,2007,(8):23-26.
[3]方德葵.虛擬大學-現(xiàn)代遠程教育理論與實踐[M].北京:中國廣播電視出版社,2003.
[4]張向華,董曉英.VRML 語言優(yōu)化圖視思維網絡課件的研究[J].計算機工程與設計,2006,27(14):2573-2574.
[5]徐素霞,馬文婕. 虛擬現(xiàn)實技術及其在遠程教學中的應用[J].軟件導刊,2006,(2):28-30.
[6]王巧玉,田 凌.基于VRML 模型的協(xié)同裝配工藝規(guī)劃仿真方法[J].高技術通訊,2006,16(8):802-807.
[7]董艇艦,王太勇,蓋 青,等.基于VRML 的虛擬模型構建和網絡開發(fā)[J].天津理工大學學報,2005,21(4):58-60.
[8]汪興謙,牛燕明. VRML 與Java 編程實例詳解[M]. 北京:中國水利水電出版社,2002.
[9]張紅燕.遠程虛擬實驗中交互與動畫的實現(xiàn)[J].計算機與現(xiàn)代化,2006,(4):40-42.