《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 沉浸式虛擬校園仿真系統(tǒng)開發(fā)及關(guān)鍵技術(shù)研究
沉浸式虛擬校園仿真系統(tǒng)開發(fā)及關(guān)鍵技術(shù)研究
2017年微型機(jī)與應(yīng)用第1期
李婷婷,劉石,陳發(fā)祿
大連東軟信息學(xué)院 數(shù)字藝術(shù)系,遼寧 大連 116023
摘要: 虛擬現(xiàn)實(shí)技術(shù)可以給人帶來身臨其境之感,傳統(tǒng)的虛擬現(xiàn)實(shí)系統(tǒng)大多采用桌面式虛擬現(xiàn)實(shí)方式,沉浸感不強(qiáng),交互性差,不能讓體驗(yàn)者沉浸在虛擬系統(tǒng)中。綜合這些因素,文章根據(jù)三維虛擬校園仿真系統(tǒng)需求,設(shè)計(jì)實(shí)現(xiàn)了基于Unity3D平臺(tái)的沉浸式虛擬校園漫游系統(tǒng),并研究沉浸式虛擬校園開發(fā)中所使用的關(guān)鍵技術(shù)。實(shí)驗(yàn)表明,該系統(tǒng)能克服虛擬漫游沉浸感不足的缺點(diǎn),用戶可以體驗(yàn)到與真實(shí)校園相近的虛擬環(huán)境,并且可以與虛擬環(huán)境進(jìn)行交互。該系統(tǒng)具有簡單和易實(shí)現(xiàn)等特點(diǎn),擁有廣闊的應(yīng)用前景。
Abstract:
Key words :

  李婷婷,劉石,陳發(fā)祿

 ?。ù筮B東軟信息學(xué)院 數(shù)字藝術(shù)系,遼寧 大連 116023)

       摘要:虛擬現(xiàn)實(shí)技術(shù)可以給人帶來身臨其境之感,傳統(tǒng)的虛擬現(xiàn)實(shí)系統(tǒng)大多采用桌面式虛擬現(xiàn)實(shí)方式,沉浸感不強(qiáng),交互性差,不能讓體驗(yàn)者沉浸在虛擬系統(tǒng)中。綜合這些因素,文章根據(jù)三維虛擬校園仿真系統(tǒng)需求,設(shè)計(jì)實(shí)現(xiàn)了基于Unity3D平臺(tái)的沉浸式虛擬校園漫游系統(tǒng),并研究沉浸式虛擬校園開發(fā)中所使用的關(guān)鍵技術(shù)。實(shí)驗(yàn)表明,該系統(tǒng)能克服虛擬漫游沉浸感不足的缺點(diǎn),用戶可以體驗(yàn)到與真實(shí)校園相近的虛擬環(huán)境,并且可以與虛擬環(huán)境進(jìn)行交互。該系統(tǒng)具有簡單和易實(shí)現(xiàn)等特點(diǎn),擁有廣闊的應(yīng)用前景。

  關(guān)鍵詞:虛擬校園;校園建模;沉浸式漫游;人機(jī)交互

  中圖分類號(hào):TP391.9文獻(xiàn)標(biāo)識(shí)碼:ADOI: 10.19358/j.issn.1674-7720.2017.01.024

  引用格式:李婷婷,劉石,陳發(fā)祿. 沉浸式虛擬校園仿真系統(tǒng)開發(fā)及關(guān)鍵技術(shù)研究[J].微型機(jī)與應(yīng)用,2017,36(1):79-82.

0引言

  虛擬現(xiàn)實(shí)技術(shù)(Virtual Reality,VR)是利用計(jì)算機(jī)生成三維虛擬景象,使人沉浸在虛擬環(huán)境中,有身臨其境的感覺,并可以與虛擬場(chǎng)景內(nèi)景象進(jìn)行交互,被廣泛應(yīng)用于娛樂、軍事、醫(yī)療、教育等領(lǐng)域[1]。虛擬現(xiàn)實(shí)技術(shù)可以被劃分成兩類:一種是沉浸式虛擬現(xiàn)實(shí)系統(tǒng),體驗(yàn)者可以通過特制的虛擬現(xiàn)實(shí)穿戴設(shè)備(比如頭盔、數(shù)據(jù)手套等)在虛擬場(chǎng)景中與之進(jìn)行交互,產(chǎn)生身臨其境的感覺。而非沉浸式虛擬現(xiàn)實(shí)系統(tǒng)通常指不借助虛擬現(xiàn)實(shí)設(shè)備,通過電腦的鼠標(biāo)、顯示器、鍵盤等標(biāo)準(zhǔn)外設(shè)在電腦桌面上營造一個(gè)窗口式的虛擬環(huán)境,該方法價(jià)格低廉,但沉浸感差[2]。

  近年來,一些與虛擬現(xiàn)實(shí)技術(shù)相關(guān)聯(lián)的虛擬校園開發(fā)愈發(fā)引起人們的關(guān)注[3]。其中,虛擬校園漫游系統(tǒng)一直是國內(nèi)外研究的熱點(diǎn)。例如,德國的 Stuttgart 大學(xué)很早以前就開始構(gòu)建虛擬校園[4],并提供了校園的真實(shí)模擬。后來,浙江大學(xué)、清華大學(xué)、山東大學(xué)等也紛紛進(jìn)行了數(shù)字校園的建設(shè)[5],吉林大學(xué)基于3DSMax創(chuàng)建校園場(chǎng)景,再在 DirectX 中選擇專業(yè)的組件來重新生成圖形并顯示出來,達(dá)到校園漫游的效果[6]。傳統(tǒng)虛擬校園的開發(fā)大多采用Quick Time VR方式,雖然精確性較高,但交互性差,沉浸感不強(qiáng)[7]?;诖?,本文在Unity3D[8]基礎(chǔ)上,結(jié)合Occlus dk2開發(fā)虛擬校園,使虛擬校園場(chǎng)景得到進(jìn)一步完善,并就系統(tǒng)設(shè)計(jì)、三維建模、場(chǎng)景交互等有關(guān)技術(shù)進(jìn)行了討論。

1系統(tǒng)設(shè)計(jì)

  沉浸式虛擬校園仿真系統(tǒng)是基于傳統(tǒng)校園景觀進(jìn)行建模,形成一個(gè)虛擬的封閉式校園。在分析系統(tǒng)需求基礎(chǔ)上采用虛擬現(xiàn)實(shí)技術(shù)配合用戶交互,使得用戶可以佩戴虛擬現(xiàn)實(shí)設(shè)備在虛擬校園內(nèi)漫游,參觀校園內(nèi)部建筑,了解校園文化歷史。本文利用Unity3D技術(shù),結(jié)合Occlus dk2虛擬現(xiàn)實(shí)頭盔開發(fā)沉浸式虛擬校園漫游系統(tǒng)。首先基于3DMAX建模工具構(gòu)建三維校園模型;然后用Terrain工具構(gòu)建場(chǎng)景地形;最后將校園模型導(dǎo)入到Unity中加入碰撞檢測(cè),實(shí)現(xiàn)用戶交互、虛擬漫游等功能,使用戶產(chǎn)生身臨其境的感覺,并且具有良好的交互性。系統(tǒng)開發(fā)流程如圖1所示。

 

001.jpg

2關(guān)鍵技術(shù)

  2.1校園建模

  校園三維建模是虛擬校園搭建過程中非常重要的組成部分,虛擬校園漫游系統(tǒng)的體驗(yàn)效果與校園三維建模效果直接相關(guān)。在本文中,所有校園建筑均采用3DMAX建模軟件實(shí)現(xiàn),在制作建筑模型過程中,按照1:5 000的比例進(jìn)行構(gòu)建,然后以fbx格式保存文件,最后在Unity3D中導(dǎo)入所生成的 fbx文件,進(jìn)行場(chǎng)景搭建。

  在建模過程中既要考慮模型真實(shí)感問題,又要考慮系統(tǒng)運(yùn)行速度問題。因此,采用精細(xì)建模與簡單建模相結(jié)合的方式構(gòu)建虛擬的校園三維景觀[9]。校園場(chǎng)景模型的制作分為兩種:一種是復(fù)雜模型,像教學(xué)樓、宿舍樓、圖書館等,這種模型制作要求非常精細(xì),做建模時(shí)要適當(dāng)保留細(xì)節(jié);另一種是簡單模型,像道路、操場(chǎng)等,這種模型的制作非常簡單,只需制作出大致的輪廓,可以靠貼圖去實(shí)現(xiàn)三維效果。構(gòu)建模型過程中,在不影響模型真實(shí)度的基礎(chǔ)上,必須要減少模型的面數(shù)和分段數(shù),刪除模型相交處隱形的面數(shù),單個(gè)模型面數(shù)最多不能超過1 000,否則會(huì)影響系統(tǒng)的運(yùn)行,通過對(duì)整個(gè)場(chǎng)景中模型的優(yōu)化達(dá)到最終的效果。

  2.2交互界面

  沉浸式虛擬校園漫游系統(tǒng)在界面設(shè)計(jì)上以簡潔、直觀、便于用戶操作為主要目的。主要考慮界面的色彩搭配、字體搭配以及頁面布局等多方面因素[10]。為了便于體驗(yàn)者在校園里游覽,本文依照界面設(shè)計(jì)原則,為體驗(yàn)者預(yù)留出大片的屏幕區(qū)域,增加學(xué)校場(chǎng)景的開闊感,所以在頁面左側(cè)以Button形式繪制出與系統(tǒng)交互的功能按鈕,右邊大片區(qū)域用于顯示校園漫游時(shí)的瀏覽畫面及交互效果。

  2.3傳送功能

  為了方便體驗(yàn)者在場(chǎng)景中漫游,本文設(shè)定傳送門功能,在漫游鏡頭到達(dá)指定傳送位置時(shí),會(huì)出現(xiàn)傳送對(duì)話框,可以根據(jù)需要傳送到場(chǎng)景中其他位置,也可以通過導(dǎo)航圖快速定位漫游到想去的地點(diǎn),運(yùn)行效果如圖2所示。部分代碼如下:

  //碰撞檢測(cè)函數(shù)

  function OnTriggerEnter(col : Collider){

  //條件判斷是否撞擊到人,如果觸發(fā)碰撞則打開傳送門

  if(col.gameObject.tag == "Player"){

  Chuansongmen.ch=0;}

  }

 

002.jpg

  2.4白天和夜晚轉(zhuǎn)換功能

  為了增強(qiáng)虛擬校園交互漫游中的真實(shí)效果,在場(chǎng)景環(huán)境構(gòu)建時(shí)除了考慮校園模型,還對(duì)天空、霧及光照效果等進(jìn)行了模擬和控制。白天和夜晚主要體現(xiàn)在天空盒、燈光、陽光的差異,用代碼控制Render Setting中的天空盒選項(xiàng),通過點(diǎn)擊按鈕改變天空盒6個(gè)方向的圖片,來實(shí)現(xiàn)白天和黑夜的轉(zhuǎn)變。校園場(chǎng)景中光線可隨時(shí)間的變化增強(qiáng)或減弱,實(shí)現(xiàn)一天中的仿真效果,模擬出現(xiàn)實(shí)生活環(huán)境,效果如圖3~4所示。

  

003.jpg

  2.5導(dǎo)航小地圖

  為了使用戶在漫游時(shí)可以實(shí)時(shí)獲得虛擬校園的方位信息,場(chǎng)景中加入導(dǎo)航功能,系統(tǒng)導(dǎo)航可以使用戶在參觀校園時(shí)獲得實(shí)時(shí)的位置信息,直觀地瀏覽校園,避免用戶進(jìn)入虛擬校園后,由于對(duì)環(huán)境的不熟悉而迷失方向。具體實(shí)現(xiàn)時(shí),采用2個(gè)攝像機(jī),分別用于顯示小地圖和正常漫游場(chǎng)景,通過計(jì)算人物所在位置與場(chǎng)景的比例來定位漫游時(shí)人物的具體位置,然后采用標(biāo)志點(diǎn)方式在小地圖中顯示出來,如圖5所示。

004.jpg

  2.6碰撞檢測(cè)

  在虛擬漫游過程中,體驗(yàn)者的觀察視點(diǎn)將隨著輸入設(shè)備的運(yùn)動(dòng)不斷發(fā)生變化,對(duì)于樹木、樓房、路燈等建筑需要做碰撞處理,否則極易造成視點(diǎn)穿過建筑物,造成虛假感覺。本系統(tǒng)在設(shè)計(jì)碰撞檢測(cè)功能時(shí)使用觸發(fā)碰撞檢測(cè)功能,即指定一個(gè)處于觸發(fā)狀態(tài)的碰撞器,將實(shí)際檢測(cè)碰撞對(duì)象包含進(jìn)該觸發(fā)器中,這樣角色與對(duì)象的碰撞檢測(cè)就轉(zhuǎn)換為角色與觸發(fā)器之間的碰撞檢測(cè),解決了碰撞過程中的突兀、不真實(shí)的感覺,提高了系統(tǒng)性能和真實(shí)程度,如圖6所示。部分代碼如下:

  //觸發(fā)器碰撞函數(shù)

  function OnTriggerEnter(col : Collider)

  //如果檢測(cè)到人則進(jìn)入觸發(fā)器碰撞

  {if(col.gameObject.tag == "Player")}

  

005.jpg

  2.7虛擬漫游

  虛擬漫游是系統(tǒng)的重要模塊,為了讓體驗(yàn)者充分感受3D校園美景,本文采用自動(dòng)漫游和自主漫游相結(jié)合的方式。當(dāng)體驗(yàn)者對(duì)學(xué)校路況不熟悉時(shí)可以采用自動(dòng)漫游方式,系統(tǒng)會(huì)帶領(lǐng)體驗(yàn)者按照預(yù)定的瀏覽路線進(jìn)行游覽,自動(dòng)對(duì)整個(gè)3D校園進(jìn)行觀察。在自動(dòng)漫游中,由于路線是預(yù)先制定好的,所以參與者可以不受外界一切干擾,當(dāng)然這也限制了參與者的視角寬度,靈活性較差。自主漫游是與自動(dòng)漫游相互補(bǔ)的另一種方式,體驗(yàn)者可以通過WASD鍵進(jìn)行前后左右走動(dòng),鼠標(biāo)或是dk2頭戴設(shè)備可以轉(zhuǎn)換漫游視角。

  設(shè)計(jì)虛擬漫游系統(tǒng)時(shí),設(shè)定體驗(yàn)者可以選擇跑步或是走路等多種動(dòng)作以便讓用戶獲得更好的體驗(yàn),具體實(shí)現(xiàn)代碼如下所示:

  //界面功能選擇

  function OnGUI(){

  //如果點(diǎn)擊跑步按鈕則進(jìn)入跑步模式,并調(diào)整相應(yīng)跑步速度

  if(GUI.Button(Rect(100,100,100,40), "跑步"))

  {CharacterMotorMovement.maxForwardSpeed=8;

  p=1; }

  //如果點(diǎn)擊走路按鈕則進(jìn)入走路模式,并調(diào)整相應(yīng)走路速度

  if(GUI.Button(Rect(100,150,100,40), "走路"))

  {CharacterMotorMovement.maxForwardSpeed=4;

  p=2; }

  }

  2.8Occlus dk2沉浸式虛擬漫游實(shí)現(xiàn)

  Oculus dk2 是2014年7月上市的一款虛擬現(xiàn)實(shí)設(shè)備,如圖7所示。它有兩個(gè)目鏡,每一個(gè)目鏡的分辨率都可以達(dá)到640×800,用戶在使用過程中,兩個(gè)目鏡疊加產(chǎn)生三維虛擬沉浸感,整體分辨率可以達(dá)到1 280×800,使得用戶在校園漫游時(shí)沉浸感大大提升。

006.jpg

  由于Unity Free integration for Oculus提供了與Unity Pro用戶相同的Oculus特性,因此,使用Unity4.6和Oculus integration包在Rift上可以開發(fā)沉浸式虛擬現(xiàn)實(shí)漫游系統(tǒng)。首先,需要把Unity 4 Oculus integration package導(dǎo)入到Unity中,然后找到 OVRPlayerController prefab將其拖入Hierarchy面板中替代MainCamera。戴上虛擬現(xiàn)實(shí)頭盔游覽校園時(shí)測(cè)試效果如圖8~圖9所示。

  

007.jpg

  3系統(tǒng)運(yùn)行效果

  如上所述的沉浸式虛擬校園漫游系統(tǒng)的開發(fā)及運(yùn)行均在Windows7操作系統(tǒng)上實(shí)現(xiàn),硬件環(huán)境為CPU Intel(R)Core(TM)i5-3230M,主頻2.6 GHz,內(nèi)存4 GB,顯卡AMD Radeon HD7500M,軟件環(huán)境為Unity3D4.6和3DS Max2014,運(yùn)行效果如圖10~圖12所示。系統(tǒng)可以發(fā)布到PC、Web等多種平臺(tái)上,并能流暢運(yùn)行,獲得了較好效果。由此證明,該系統(tǒng)具有較好的移植性,能夠在多種軟硬件平臺(tái)下運(yùn)行。

  

008.jpg

4結(jié)論

  本文基于3DS Max建模技術(shù)和Unity3D虛擬現(xiàn)實(shí)技術(shù),將校園場(chǎng)景信息進(jìn)行收集、整理并建立完整的三維仿真模型,結(jié)合虛擬現(xiàn)實(shí)頭盔Occulus dk2開發(fā)沉浸式3D虛擬校園漫游系統(tǒng)。運(yùn)行結(jié)果表明,這種方法建立的虛擬校園突破了傳統(tǒng)的二維數(shù)字校園平面表現(xiàn)方式,可以實(shí)現(xiàn)直觀、生動(dòng)、逼真的校園場(chǎng)景,用戶戴上頭盔后有很強(qiáng)的沉浸感,可以很直觀地、全方位地瀏覽整個(gè)校園景觀,并且進(jìn)行諸如漫游、傳送、自動(dòng)瀏覽等一系列操作,人機(jī)交互效果良好,具有身臨其境的感覺。本文為沉浸式虛擬校園建設(shè)提供了新思路,同時(shí)可以推廣到博物館、公園景觀等虛擬現(xiàn)實(shí)應(yīng)用中。未來,隨著虛擬現(xiàn)實(shí)技術(shù)的不斷成熟,沉浸式虛擬校園將在沉浸感、真實(shí)感等方向繼續(xù)向前發(fā)展,增添更加豐富的內(nèi)容。

參考文獻(xiàn)

 ?。?] 張典華,陳一民.基于Unity3D的多平臺(tái)虛擬校園設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2014,24(2):127130.

 ?。?] 劉航,王積忠,王春水.虛擬校園三維仿真系統(tǒng)關(guān)鍵技術(shù)研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(6): 2934 2936.

 ?。?] 張榮華.幾何建模技術(shù)在虛擬校園漫游系統(tǒng)開發(fā)中的應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(28):61466148.

 ?。?] SCHANKRC. The virtual university[J]. Cyberpsychology & Behavior,2000,3(1):120123.

 ?。?] 張曉宇.虛擬校園漫游系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D] .長春:吉林大學(xué),2013.

 ?。?] 梁少剛.基于位置服務(wù)的三維虛擬校園系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].重慶:重慶郵電大學(xué),2015.

  [7] 仲于姍.基于Unity的3D虛擬校園漫游系統(tǒng)的開發(fā)[D].昆明:云南大學(xué),2015.

 ?。?] 劉柱.基于UNITY WEB3D虛擬校園的設(shè)計(jì)和實(shí)現(xiàn)[D] .大連:大連理工大學(xué),2014.

  [9] 劉東江.基于GIS的虛擬校園的設(shè)計(jì)與實(shí)現(xiàn)[D] .北京:北京交通大學(xué),2014.

 ?。?0] 李玉平,徐懋琦.多媒體人機(jī)交互界面設(shè)計(jì)的適宜性[J].華東理工大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2006,21(2):112-114.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。