胡 偉,李 兵
(湖南第一師范學(xué)院,湖南長(zhǎng)沙 410205)
基于Web3D的虛擬現(xiàn)實(shí)技術(shù)的對(duì)比研究與分析
胡 偉,李 兵
(湖南第一師范學(xué)院,湖南長(zhǎng)沙 410205)
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展,虛擬現(xiàn)實(shí)技術(shù)應(yīng)用越來(lái)越普及。目前,基于Web3D技術(shù)的虛擬現(xiàn)實(shí)開(kāi)發(fā)平臺(tái)有很多種,通過(guò)對(duì)常用的技術(shù)進(jìn)行對(duì)比分析,提出了Web3D開(kāi)發(fā)平臺(tái)的選取原則,為網(wǎng)絡(luò)虛擬現(xiàn)實(shí)開(kāi)發(fā)的平臺(tái)選擇提供參考。
web3D;虛擬現(xiàn)實(shí);對(duì)比研究
虛擬現(xiàn)實(shí)技術(shù)是將數(shù)字圖像處理、計(jì)算機(jī)圖形學(xué)、多媒體技術(shù)、傳感器技術(shù)等多個(gè)信息技術(shù)融合為一體的一門(mén)嶄新的綜合性信息技術(shù)。虛擬現(xiàn)實(shí)技術(shù)是目前計(jì)算機(jī)領(lǐng)域比較受關(guān)注的一項(xiàng)新技術(shù),國(guó)家中長(zhǎng)期科學(xué)和技術(shù)發(fā)展規(guī)劃綱要(2006—2020年)中,明確地將其作為前沿技術(shù)重點(diǎn)研究[1]。虛擬現(xiàn)實(shí)技術(shù)已經(jīng)應(yīng)用在電子商務(wù)商品的3D展示、科技與工程的科普和工程演示、教育培訓(xùn)和軍事訓(xùn)練的可視化仿真和虛擬實(shí)驗(yàn)、導(dǎo)游和交通運(yùn)輸以及地圖等地理信息系統(tǒng)數(shù)據(jù)的可視化等等多方面。
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,三維虛擬現(xiàn)實(shí)在網(wǎng)絡(luò)中的應(yīng)用愈來(lái)愈普及。網(wǎng)絡(luò)三維虛擬現(xiàn)實(shí)技術(shù)主要是通過(guò)Web3D技術(shù)予以實(shí)現(xiàn)的。Web3D技術(shù)是一種桌面級(jí)的網(wǎng)絡(luò)虛擬現(xiàn)實(shí)技術(shù),通過(guò)Web3D技術(shù),用戶可以瀏覽網(wǎng)頁(yè)中的三維圖像,通過(guò)交互操作,可以使瀏覽者產(chǎn)生身臨其境的感覺(jué)。Web3D技術(shù)在教育培訓(xùn)、電子商務(wù)和游戲開(kāi)發(fā)中受到越來(lái)越多的關(guān)注,許多公司都提出了基于網(wǎng)絡(luò)的3D技術(shù)解決方案。目前,Web3D技術(shù)有幾十種之多,使得用戶在選擇上眼花繚亂,不知如何決定。本文擬通過(guò)對(duì)幾種常用的Web3D技術(shù)進(jìn)行對(duì)比分析,為網(wǎng)絡(luò)三維虛擬技術(shù)的開(kāi)發(fā)和實(shí)現(xiàn)提供一些參考。
(一)Viewpoint
Viewpoint是由metacreation和Intel提出的一種Web3D技術(shù),通過(guò)在XML語(yǔ)言的基礎(chǔ)上進(jìn)行構(gòu)建,Viewpoint可以很容易地與瀏覽器和數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)交換,由于可將其內(nèi)嵌于多種軟件中使用,使得它的應(yīng)用范圍非常廣泛。在瀏覽時(shí)只需在客戶端安裝插件便可顯示出以流方式傳輸?shù)?D模型。通過(guò)鼠標(biāo)或?yàn)g覽器事件進(jìn)行觸發(fā),能動(dòng)態(tài)地進(jìn)行交互演示或與用戶進(jìn)行交互操作,如對(duì)象的縮放和平移等,此技術(shù)貫通于網(wǎng)絡(luò)三維虛擬技術(shù)的各個(gè)環(huán)節(jié)。但與其他的Web3D技術(shù)相比較,ViewPnint需要通過(guò)自己的軟件制作和處理三維圖形對(duì)象,而不是通過(guò)其他方式導(dǎo)入三維圖像,因此是真正的3D模型,可創(chuàng)建出照片級(jí)真實(shí)的3D影像。
Viewpoint在結(jié)構(gòu)上可分為兩個(gè)部分,一個(gè)是儲(chǔ)存三維數(shù)據(jù)和貼圖數(shù)據(jù)的mts文件,另一個(gè)是對(duì)場(chǎng)景參數(shù)和交互進(jìn)行描述的基于XML的mtx文件。通過(guò)采用獨(dú)特的壓縮技術(shù),將復(fù)雜的3D信息壓縮成很小的數(shù)字格式,因此非常適合在網(wǎng)絡(luò)傳輸。當(dāng)文件傳輸至本機(jī)后,通過(guò)高質(zhì)量的實(shí)時(shí)渲染引擎,在不需要任何硬件加速的情況下可將對(duì)象非常真實(shí)地進(jìn)行三維渲染和顯示。正是因?yàn)橐陨咸攸c(diǎn),Viewpoint主要運(yùn)用在電子商務(wù)的產(chǎn)品宣傳和商品展示等商業(yè)領(lǐng)域,一些商業(yè)網(wǎng)站和在線廣告均采用了該技術(shù)[2]。
(二)Cult3D
瑞典的Cycore公司所研發(fā)的一種跨平臺(tái)流式Web3D技術(shù)——Cult3D,通過(guò)利用現(xiàn)有的網(wǎng)絡(luò)技術(shù)和三維渲染引擎來(lái)進(jìn)行3D模型的建構(gòu),具有很高的壓縮率,能在網(wǎng)絡(luò)中快速地傳輸,應(yīng)用在主流操作系統(tǒng)和應(yīng)用程序中。Cult3D具有跨平臺(tái)性,能在Windows、Unix和Linux等各種操作系統(tǒng)中運(yùn)行,不需要硬件支持。
Cult3D和Viewpoint雖然在3D顯示和三維交互中具有一定的相似性,但Cult3D是基于Java語(yǔ)言構(gòu)建的,提供了更多樣化的擴(kuò)展功能。更為重要的是,Cult3D能作為對(duì)象元素導(dǎo)入到常用的軟件中,如 Office、Director和 Acrobat等。Cult3D需要利用3DMAX等三維建模軟件進(jìn)行建模后導(dǎo)入,但其開(kāi)發(fā)環(huán)境更具人性化和條理化,有利于提高開(kāi)發(fā)效率。因此在商務(wù)網(wǎng)站或博物館的站點(diǎn)的物品展示以及三維游戲動(dòng)畫(huà)的制作和開(kāi)發(fā)均采用此Web3D技術(shù)。
(三)Java 3D
Java 3D其實(shí)質(zhì)是將Java語(yǔ)言與三維技術(shù)結(jié)合,使Java語(yǔ)言的功能在三維圖形領(lǐng)域中得到擴(kuò)展。Sun公司將Java 3D作為應(yīng)用程序(API)接口推出,它把OpenGL和DirectX等底層的3D技術(shù)包含進(jìn)來(lái),作為底層的三維顯示技術(shù)封裝。因此,Java 3D就是一個(gè)提供基于Java語(yǔ)言的上層接口的API。它為用戶提供了利用高層工具進(jìn)行三維實(shí)體創(chuàng)建、操作和著色并渲染的組織結(jié)構(gòu)。正因如此,使得3D技術(shù)開(kāi)發(fā)變得簡(jiǎn)單,同時(shí)還可加入到J2EE等整體框架中,便于功能擴(kuò)展。
Java語(yǔ)言具有“一次編寫(xiě),隨處運(yùn)行”的優(yōu)點(diǎn),因此Java 3D所三維圖形程序也具有能在各種平臺(tái)廣泛運(yùn)行的特點(diǎn)。在編寫(xiě)Java 3D程序時(shí),我們只需調(diào)用API進(jìn)行編程,在客戶端使用標(biāo)準(zhǔn)的Java虛擬機(jī)就可以瀏覽而并不需要安裝任何插件,這是Java 3D所具有的最大優(yōu)越性。由于Java 3D已將底層的渲染代碼等三維顯示技術(shù)封裝,技術(shù)開(kāi)發(fā)者只需關(guān)注場(chǎng)景和組織等這些形體本身,而不需考慮組成這些三維實(shí)體的三角面。我們常用Java 3D來(lái)制作一些計(jì)算機(jī)教學(xué)輔助軟件和三維游戲等等[3]。
(四)X3D
VRML(虛擬現(xiàn)實(shí)建模語(yǔ)言)作為最初的虛擬現(xiàn)實(shí)開(kāi)發(fā)語(yǔ)言,雖然具有低帶寬和靈活高效的優(yōu)點(diǎn),但隨著計(jì)算機(jī)技術(shù)的發(fā)展,它的不足也顯現(xiàn)出來(lái)了,如代碼重用率低,性能表現(xiàn)不佳,插件安裝時(shí)間長(zhǎng)且占用系統(tǒng)資源過(guò)多等。因此,Web3D協(xié)會(huì)制定了Extensible 3D(X3D)新標(biāo)準(zhǔn)。X3D集成了Java、流媒體技術(shù)等最新先進(jìn)技術(shù),是最新的面向網(wǎng)絡(luò)的交互式性三維圖形規(guī)范。它具有更加高效的3D計(jì)算能力、三維渲染能力以及更快的網(wǎng)絡(luò)傳輸能力。X3D采用了構(gòu)件化的程序設(shè)計(jì)思想并與XML集成,因此具有很強(qiáng)的功能擴(kuò)展能力。
X3D采用了面向?qū)ο罄碚摰臉?gòu)件化模式,這不但使得X3D程序編寫(xiě)難度降低,而且增加了其擴(kuò)展性以及與其他語(yǔ)言的交互性。與其前身VRML相比,X3D具有先進(jìn)應(yīng)有程序界面、高度的兼容性、允許多種編碼模式、安全性可靠性高等諸多優(yōu)點(diǎn),常用于虛擬交互實(shí)驗(yàn)室和虛擬儀器等的開(kāi)發(fā)。
面對(duì)眾多的Web3D技術(shù),我們?cè)撊绾芜x擇適合的開(kāi)發(fā)工具呢?一個(gè)良好的開(kāi)發(fā)平臺(tái),不但能在用戶面前呈現(xiàn)出一個(gè)具有良好交互性的逼真虛擬環(huán)境,而且便于軟件開(kāi)發(fā)者對(duì)軟件的研制、維護(hù)和功能擴(kuò)展。所以,Web3D技術(shù)開(kāi)發(fā)平臺(tái)的選取要從使用者和軟件開(kāi)發(fā)者綜合考慮。
對(duì)于虛擬現(xiàn)實(shí)的終端用戶來(lái)說(shuō),都希望能得到高顯示質(zhì)量具有真實(shí)感的虛擬現(xiàn)實(shí)軟件。首先,我們要考察開(kāi)發(fā)平臺(tái)的模型顯示質(zhì)量,尤其是三維模型的渲染質(zhì)量。這項(xiàng)指標(biāo)將影響用戶的第一印象,是開(kāi)發(fā)平臺(tái)好壞與否的最重要指標(biāo)。其次,我們要考察開(kāi)發(fā)平臺(tái)的交互性。交互功能是影響虛擬現(xiàn)實(shí)軟件真實(shí)感的關(guān)鍵因素,強(qiáng)大的交互功能能大大增加用戶在使用過(guò)程中的真實(shí)感。最后,我們要考察開(kāi)發(fā)平臺(tái)的遲滯性。要使軟件使用者具有真實(shí)感,軟件的交互過(guò)程的反饋必須及時(shí),要有實(shí)時(shí)性。其中實(shí)時(shí)性包括兩個(gè)方面:一是軟件下載和插件安裝的等待時(shí)間;二是交互的延遲,雖然每種開(kāi)發(fā)平臺(tái)都有一定的交互延遲,但是延遲時(shí)間需控制在容忍時(shí)間范圍內(nèi)。遲滯性主要由開(kāi)發(fā)平臺(tái)的文件壓縮性和渲染器的性能所決定。
對(duì)于虛擬現(xiàn)實(shí)軟件的開(kāi)發(fā)者來(lái)說(shuō),則希望開(kāi)發(fā)過(guò)程簡(jiǎn)便,且軟件易于維護(hù)和功能擴(kuò)展。虛擬現(xiàn)實(shí)開(kāi)發(fā)的一個(gè)重要環(huán)境就是三維建模,能否方便快捷地導(dǎo)入利用各種建模軟件建好的三維模型是一個(gè)重要指標(biāo)。另外,能否很方便地利用開(kāi)發(fā)平臺(tái)進(jìn)行軟件的維護(hù)以及功能擴(kuò)展,不斷更新和完善軟件也是極其重要的。故虛擬現(xiàn)實(shí)平臺(tái)的選擇并不是隨意任選,必須對(duì)根據(jù)開(kāi)發(fā)內(nèi)容和使用對(duì)象,綜合各種因素進(jìn)行考慮。
根據(jù)前述開(kāi)發(fā)平臺(tái)選取原則的分析,常用的Web3D開(kāi)發(fā)軟件平臺(tái)有各自的優(yōu)勢(shì),同時(shí)也有一些缺陷和不足,下面從瀏覽要求、建模方式以及各自特點(diǎn)進(jìn)行縱向的技術(shù)對(duì)比和分析。
(一)瀏覽要求對(duì)比
這幾種Web3D開(kāi)發(fā)平臺(tái)并不能利用瀏覽器直接瀏覽,而需要按照相應(yīng)的插件或程序。Java3D需要按照J(rèn)ava虛擬機(jī)和應(yīng)用程序接口,而利用X3D技術(shù)開(kāi)發(fā)的軟件則需要按照對(duì)應(yīng)的程序或插件。
(二)運(yùn)行平臺(tái)對(duì)比
作為運(yùn)用普及最廣泛的Windows操作系統(tǒng),各種Web3D技術(shù)均予以支持,但相對(duì)來(lái)說(shuō),基于Cult3D和X3D所開(kāi)發(fā)的軟件能適應(yīng)更多的操作系統(tǒng)。
(三)三維建模方式對(duì)比
三維交互技術(shù)當(dāng)然離不開(kāi)三維模型的制作,三維模型的制作也直接決定了軟件開(kāi)發(fā)的難易程度。能制作三維模型的方式和途徑越多,那么我們開(kāi)發(fā)就更加靈活方便。ViewPoint的三維模型只能依靠其本身來(lái)制作和處理,不能從其他途徑導(dǎo)入3D模型,但ViewPoint所創(chuàng)建的3D屬于照片級(jí)的高質(zhì)量影像。相反,Cult3D本身不具備三維建模能力,只能通過(guò)3D MAX等其他建模工具生成.c3d文件格式,然后導(dǎo)入。Java3D則有兩種建模方式,一種是通過(guò)Java API本身所提供的一些類編程方式;另外一種是,使用Java3D的模型載入器導(dǎo)入利用其他軟件生成的三維模型。但是,對(duì)于導(dǎo)入的模型在讀入Java3D后有可能發(fā)會(huì)生“坐標(biāo)偏移”的現(xiàn)象,如果對(duì)這樣的模型進(jìn)行旋轉(zhuǎn)操作的話,有可能會(huì)導(dǎo)致運(yùn)動(dòng)偏離對(duì)象的軸心。X3D技術(shù)是對(duì)VRML升級(jí)并集成了XML,它不但能利用VRML語(yǔ)言,通過(guò)編寫(xiě)程序代碼構(gòu)建三維模型,也可通過(guò)其他渠道導(dǎo)入三維模型。
(四)開(kāi)發(fā)過(guò)程
虛擬現(xiàn)實(shí)交互軟件開(kāi)發(fā)過(guò)程的難易程度不但取決于三維模型的建立,而且受交互性設(shè)置的影響。雖然,Java3D的三維模型創(chuàng)建方式比較靈活,但是添加交互需要對(duì)Java語(yǔ)言編寫(xiě)程序進(jìn)行控制,實(shí)現(xiàn)起來(lái)較為困難,雖能實(shí)現(xiàn)一些虛擬現(xiàn)實(shí)中一些復(fù)雜的交互功能,但是開(kāi)發(fā)工程比較緩慢,其整體開(kāi)發(fā)難度較為復(fù)雜。在Cult3D平臺(tái)中,其交互功能已在Designer中可視化給出,開(kāi)發(fā)者只需進(jìn)行選擇,使用非常簡(jiǎn)便。X3D的交互不但能通過(guò)編程實(shí)現(xiàn),也可通過(guò)開(kāi)發(fā)軟件進(jìn)行設(shè)定,其開(kāi)發(fā)過(guò)程也較為簡(jiǎn)單。
表1 各種Web3D開(kāi)發(fā)平臺(tái)對(duì)比
另外,利用不同的Web3D開(kāi)發(fā)平臺(tái)所開(kāi)發(fā)的軟件的維護(hù)和功能擴(kuò)展性也有差別。例如,Java 3D提供了圖形API接口,非常便于其功能擴(kuò)展;同樣,X3D也提供了VRML程序接口,也便于其功能擴(kuò)展,對(duì)于各種Web3D開(kāi)發(fā)平臺(tái)的技術(shù)特點(diǎn)如表1所示。
對(duì)于Web 3D的虛擬現(xiàn)實(shí)實(shí)現(xiàn)技術(shù)遠(yuǎn)不止本文所述的幾種,對(duì)于如此多的開(kāi)發(fā)技術(shù),基于Web 3D的虛擬現(xiàn)實(shí)的開(kāi)發(fā)仍存在著許多困難,這主要是因?yàn)楦鞣N開(kāi)發(fā)平臺(tái)是不同公司自行開(kāi)發(fā),基于不同的架構(gòu),使用不同的格式和方法,沒(méi)有統(tǒng)一的標(biāo)準(zhǔn)。各種開(kāi)發(fā)平臺(tái)都有各自的有缺點(diǎn),我們需要從用戶角度和開(kāi)發(fā)角度綜合考慮,選擇適合的基于Web 3D虛擬現(xiàn)實(shí)開(kāi)發(fā)平臺(tái)。
[1]劉鍇.基于Web3D的虛擬實(shí)驗(yàn)實(shí)現(xiàn)技術(shù)的比較與分析[J].中國(guó)教育信息化,2008,(17):75-77.
[2]蔣燕萍,夏旺盛,黃心淵.幾種Web3D技術(shù)的比較[J].北方工業(yè)大學(xué)學(xué)報(bào),2003,(1):21-25.
[3]王維敏.Web3D技術(shù)探索及幾種Web3D技術(shù)的比較選擇[D].武漢:武漢大學(xué),2004.
[4]李勇帆,李里程.論情感計(jì)算和Web技術(shù)支持的網(wǎng)絡(luò)自主在線學(xué)習(xí)模式的設(shè)計(jì)與構(gòu)建[J].中國(guó)電化教育,2011,(8):129-133.
A Comparative Study of VirtualReality Technology Based onWeb3D
HUWei,LIBing
(Hunan FirstNormalUniversity,Changsha,Hunan 410205)
With the developmentof the computernetwork technology,the application ofvirtual reality technology ismore andmore popular.Currently,there are agreat variety of development platforms for virtual reality technology on the basis ofweb3D.After the comparative studieson some commonly used technologies,this paper proposes the principles to select developmentplatforms for future reference.
web3D;virtual reality;comparative study
TP391.9
A
1674-831X(2012)04-0121-04
2012-03-18
全國(guó)教育科學(xué)“十一五”規(guī)劃教育部重點(diǎn)課題(DCA090321);湖南省高??萍紕?chuàng)新團(tuán)隊(duì)支持計(jì)劃資助(湘教通[2010]212號(hào));湖南省科技廳高新計(jì)劃資助項(xiàng)目(2010GK3049);湖南省教育廳科學(xué)研究項(xiàng)目(10C0526;11C0280)
胡偉(1978—),男,湖南長(zhǎng)沙人,湖南第一師范學(xué)院講師,碩士,主要從事計(jì)算機(jī)仿真研究;李兵(1969—),男,遼寧鳳城人,湖南第一師范學(xué)院講師,主要從事計(jì)算機(jī)應(yīng)用研究。
[責(zé)任編輯:葛春蕃]
湖南第一師范學(xué)院學(xué)報(bào)2012年4期