范 沖,周鳳平,周 敏
(中南大學地球科學與信息物理學院,湖南長沙 410083)
虛擬現實技術是近年來發展最快的信息技術之一,并深入應用于科學研究、教育培訓、工業設計[1]、城市規劃[2]及虛擬旅游[3]等各個領域。虛擬實驗室是虛擬現實技術在教育領域中的一種應用創新[4]。與傳統實驗室相比,它具有利用率高、無磨損老化問題、易于維護和升級等優勢。近年來,國內外的許多高校和科研機構都根據自己的教學和科研需要建立了虛擬實驗室。國外著名的虛擬實驗室有美國麻省理工學院的MIT Microelectronics Web Lab[5]、德國 Ruhr大學的虛擬自動化實驗室[6]等。國內的有浙江大學的有機化學虛擬實驗室、清華大學的電力系統及大型發電設備安全控制和仿真國家重點實驗室等[7]。
測繪學科的教學不同于其他學科的一個特點在于其實驗教學環節占據了很大比重。但是由于受實驗儀器資源匱乏、實習教師缺乏、時間、地點、天氣及管理等方面的限制,大部分學生在實驗教學活動中沒有得到充分的練習,極大影響了教學質量。
基于其他學科的虛擬實驗室的成功應用,建立一個虛擬測繪實驗室是解決上述問題的有效途徑。虛擬現實技術在測繪學科的研究比較少,已知的有建立全站儀模擬操作系統[8],但是其仿真程度低,對學生吸引力不大,不利于應用發展?;赒uest3D建立的虛擬實驗室是一個三維的桌面虛擬實驗室,改進了過去虛擬實驗室仿真度低的弱點,本文擬基于此進行相關研究。
Quest3D是Act-3D公司開發的一款功能強大、應用廣闊的實時三維項目制作軟件,在業內以效果出色而聞名[9-11]。它整合了圖形處理、聲音、網絡、交互設計、人工智能等技術,能輕易地實現凹凸貼圖、自動路徑及物理屬性等功能。Quest3D最大的特點就是獨創的Channel(通道)技術,在這種方式下開發人員不需要編寫大量的復雜代碼,可以直接使用大量具有強大功能的模塊通過“搭積木”的編程方式來實現其特定的功能[9]。這些模塊不僅易于使用,而且還可以根據自身需要采用C++語言進行編寫擴展。
采用Quest3D作為三維虛擬實驗室的開發平臺,其開發流程如圖1所示。

圖1 基于Quest3D的虛擬實驗室開發流程
采用Quest3D進行虛擬實驗室的開發,其開發實現的流程如圖2所示。

圖2 虛擬實驗室的具體實現流程
(1)模型建立
在虛擬實驗室建設過程中,可以將所要建立的模型分為兩種:一是主要物體模型,如虛擬實驗室中的實驗儀器模型、主要建筑物模型等;二是場景模型,包括地形及不重要的地物。建模有兩種方法:一是使用3ds Max等建模軟件建模,該方法比較耗費時間及精力,但是可以建立高精度、高仿真的模型;二是使用擁有建模功能的虛擬現實平臺建模,虛擬平臺建模在精度上有所欠缺,但它通常帶有很多模板,可以簡單迅速地建立效果出色的模板模型。在建模時,應該根據所要建立模型的特點,選擇合適的建模平臺及方法,盡量花較少的時間、精力得到理想的模型。在通常情況下,虛擬實驗室中的實驗儀器模型采取第一種建模方式,即使用建模軟件直接建模;場景模型則根據需要選擇建模方式。
建模過程中需要注意以下兩個方面:①應盡量避免物理原型中存在的特定的與本虛擬實驗無關的數據,盡量減少模型的數據量,以保證日后程序的正??焖龠\行;②各種模型在建模時應注意要與真實世界中原型的尺寸一致,避免各種模型導入時因大小不匹配而失去真實感。
(2)模型導入
模型導入是指將在建模平臺所建立的模型導入到虛擬平臺Quest3D中,以便進行接下來的模型交互設計工作。在模型導入的過程中要注意模型文件格式的設置及轉換。
(3)模型的交互設計
利用Quest3D完成模型的交互設計工作具體可以分為3個部分:用戶圖形接口的設計、事件模塊及整個程序的組織部分。用戶圖形接口為觸發事件的表現形式,具體表現為按鈕、滑塊等。事件模塊為主要物體模型各個具體功能的實現模塊,包含物體本身的行為和模型之間的相互行為。程序的組織部分包括程序的頁面跳轉、功能模塊的發生順序等。
在交互設計過程需要注意以下兩個問題:①資源的重復利用問題。這個問題會加大程序占用的內存空間,增加程序的運行負擔。在交互設計過程中要加強對資源的管理,可采用專門的CGR文件存放圖片等資源,使用時再進行調用。②程序模塊的命名與注釋問題。對各個模塊要做到統一及規范的命名,并且要學會寫注釋。
(4)虛擬實驗室的整合發布
Quest3D中的項目可能由許多子程序組成,如各個菜單屏幕和三維場景,要發布成可用的程序就必須先將它們整合起來。整合的方法有兩種:一是使用邏輯信道建立邏輯,進行切換;二是使用Quest3D的“Finite State Machine(有限狀態機)”信道進行組織。整合之后就要進行發布,Quest3D有眾多發布選項可選,常用的有Q3D播放器文件、EXE文件和安裝文件。其中Q3D播放器文件還支持ActiveX控件的因特網瀏覽器上查看[10]。
虛擬測繪實驗室是現有測繪實驗的數字化和虛擬化,為測繪學科開設的各種測繪虛擬實驗課程提供了全新的教學環境。根據虛擬測繪實驗室的需求,將虛擬測繪實驗室的系統設計為以下3個模塊:①測繪儀器模塊,建立測繪實驗室儀器庫,實現各類測繪儀器(如全站儀、GPS、水平儀等)的虛擬仿真;②測繪實驗實習模塊,建立三維虛擬實驗環境,有效模擬測繪儀器認識實驗及全站儀導線測量等實驗;③管理平臺模塊,建立開放式虛擬測繪實驗室管理信息系統,實現對整個虛擬實驗室的全局管理。這個模塊另一個功能是通過用戶對虛擬實驗室的使用情況的評價反回饋,分析得到實驗室的優劣。這對虛擬實驗室的發展提供了有效的數據來源,保證了虛擬實驗室的可持續發展。
在虛擬測繪實驗室的建設中,儀器模型是主要物體模型,精度要求高,因此采用3ds Max建模。而虛擬場景的精度要求不高,并且在Quest3D中預定義了大量的地形、樹和植物,可以直接、方便、快捷地創建出逼真的虛擬場景。因此,選用Quest3D進行虛擬場景建模,其效果如圖3所示。

圖3 采用Quest3D建立的場景模型
將所建立的模型導入到Ques3D中并進行交互設計,整合并發布的效果如圖4所示。

圖4 以EXE形式發布的程序中的全站儀安置操作接口
本文以虛擬現實技術和計算機技術為依據,針對測繪學科教學中實驗教學環節比重大的特點,參考眾多虛擬實驗室的構建,結合自身實際情況,提出了基于Quest3D構建虛擬測繪實驗室的整體設計方案和實現方法,并進行了初期的建設。通過虛擬測繪實驗室的初期建設,可以看出,采用3ds Max+Quest3D的技術組合建立一個效果出眾的三維虛擬實驗室是完全可行的。
[1] 陳為.虛擬現實技術在工業設計中的應用[J].機電產品開發與創新,2006,19(5):122-124.
[2] 劉增良,陳品祥,賈光軍,等.虛擬現實技術在城市規劃管理中的應用研究與實踐[J].測繪通報,2010(5):45-47.
[3] HIRAYU H,OJIKA T,KIJIMA R.Constructing the Historic Villages of Shirakawa—Go in Virtual Reality[J].IEEE Multimedia,2000,7(2):61-63.
[4] 衣李娜.基于VRML的數字邏輯電路虛擬實驗室的設計方法研究[D].天津:天津大學,2005:1-2.
[5] 李永帥.基于Virtools的中學物理虛擬實驗室的構建方法研究[D].山東:山東建筑大學,2011.
[6] 張燕霞.基于虛擬儀器的傳感器虛擬實驗與虛擬實驗室[D].南京:南京航空航天大學,2005.
[7] 陳小紅.虛擬實驗室的研究現狀及其發展趨勢[J].中國現代教育裝備,2010(17):107-109.
[8] 駱旭佳.基于虛擬現實仿真技術的全站儀模擬操作系統的研制[D].合肥:合肥工業大學,2010.
[9] 劉蓓蓓,趙曉春,張永帥,等.Quest3D技術在園林景觀設計中的應用與實現[J].安徽農業科學,2010,38(13):7134-7136.
[10] 黃俊銘,艾伯特電通.Quest3D黑皮書-從入門到精通[M].臺北:上奇資訊,2010.
[11] 劉黨輝,武彥云,蘇永芝,等.基于Quest3D的導彈飛行三維視景仿真[J].新技術新工藝,2011(10):50-51.