魏育坤
摘要 以真實(shí)空間場景為基礎(chǔ),依托地理信息技術(shù)、三維建模技術(shù),借助游戲引擎,構(gòu)建出三維可視化模型景觀。此外,通過引入漫游邏輯、導(dǎo)航邏輯等控制邏輯,允許使用者于虛擬場景中進(jìn)行漫游、導(dǎo)航等操作。系統(tǒng)具備真實(shí)感強(qiáng)、界面友好、可交互等特征,滿足現(xiàn)代校園在對外宣傳、對內(nèi)引導(dǎo)、校園規(guī)劃、信息化管理等方面的需求。
【關(guān)鍵詞】虛擬校園 游戲引擎 三維建模
虛擬現(xiàn)實(shí)(Virtual Reality,簡稱VR)是人類在探索自然、認(rèn)識自然過程中創(chuàng)造產(chǎn)生,逐步形成的一種用于認(rèn)識自然、模擬自然,進(jìn)而更好地適應(yīng)和利用自然的科學(xué)方法和科學(xué)技術(shù)。利用虛擬現(xiàn)實(shí)技術(shù),可以真實(shí)場景為基礎(chǔ),依托地理信息技術(shù)、三維建模技術(shù)及游戲引擎,構(gòu)建出兼具真實(shí)感與交互性的虛擬現(xiàn)實(shí)場景。
1 概述
近年來,校園的信息化建設(shè)得以迅速發(fā)展,而虛擬校園是校園信息化建設(shè)的重要組成部分。傳統(tǒng)的虛擬校園大多建立在二維地圖及影像資料上,難以滿足當(dāng)代校園在對外宣傳、對內(nèi)引導(dǎo)、校園規(guī)劃、信息化管理等方面的需求。而最新的虛擬現(xiàn)實(shí)技術(shù)具有真實(shí)感強(qiáng)、可交互、多設(shè)備兼容等特點(diǎn),將其應(yīng)用于虛擬校園的建設(shè)中可彌補(bǔ)傳統(tǒng)虛擬校園固有的不足,
針對上述背景,本文利用虛擬現(xiàn)實(shí)技術(shù),使用3D Max進(jìn)行三維模型構(gòu)建,借助Unity3D構(gòu)建出虛擬場景,并通過c#編程,引入相應(yīng)的控制邏輯,構(gòu)建出了兼具真實(shí)感及交互性的虛擬校園。虛擬校園支持漫游、導(dǎo)航等操作,并可部署在不同平臺上,為校園宣傳、規(guī)劃、信息化管理等方面提供服務(wù)。
2 系統(tǒng)設(shè)計
2.1 構(gòu)建流程
系統(tǒng)開發(fā)過程中以軟件工程方法學(xué)為基礎(chǔ),以實(shí)際需求為導(dǎo)向,設(shè)計系統(tǒng)內(nèi)各模塊的功能。系統(tǒng)的開發(fā)流程主要分為三個部分:模型構(gòu)建、三維虛擬場景搭建及控制邏輯的引入。此外,開發(fā)完成的系統(tǒng)還可部署于不同平臺之上,具備跨平臺兼容的特性。圖l給出了系統(tǒng)開發(fā)的主要流程。
2.1.1 模型構(gòu)建
三維模型的構(gòu)建方法日漸趨于成熟。Autodesk公司推出的3D Max軟件,為快速構(gòu)建三維模型提供解決方案,是目前最流行的三維建模軟件之一。
要構(gòu)建三維模型,首先需獲取模型的參數(shù)信息。通常地,可通過建筑圖紙、實(shí)地觀測、衛(wèi)星地圖測距等方式獲取到場景內(nèi)模型的坐標(biāo)及輪廓信息。本文采用衛(wèi)星地圖與實(shí)地觀測組合的方法進(jìn)行參數(shù)化建模。3D Max支持多邊形建模、NURBS曲線建模、面片建模等多種建模方式,其中,以多邊形建模最為常用。多邊形建模以點(diǎn)、線、面為操縱對象,通過對網(wǎng)格模型的編輯,將基本的幾何體轉(zhuǎn)換為目標(biāo)模型。
2.1.2 三維虛擬場景搭建
隨著虛擬現(xiàn)實(shí)技術(shù)的不斷發(fā)展,用以VR系統(tǒng)開發(fā)的軟件平臺及建模語言亦應(yīng)運(yùn)而生。近年來,Unity Technologies公司開發(fā)出了Unity圖形圖像引擎,使得建筑可視化、實(shí)時三維動畫的創(chuàng)建變得簡單易行。模型構(gòu)建完成后,只需將其導(dǎo)入Unity3D并以可視化的方式完成場景中對象的布局即可完成三維虛擬場景的搭建工作。
為增強(qiáng)虛擬場景的真實(shí)感,需要對場景中的對象進(jìn)行進(jìn)一步的配置。例如,在真實(shí)世界中,是不允許對象之間隨意穿行的,根據(jù)這一規(guī)則,需為虛擬場景中的對象添加碰撞檢測機(jī)制以避免剛體間的穿行現(xiàn)象。
2.1.3 控制邏輯的引入
通過控制腳本,可以方便地操作虛擬場景中的對象,以達(dá)到人機(jī)交互的目的。Unity支持以C#及JavaScript編寫控制邏輯。從功能上劃分,控制邏輯可分為:漫游邏輯(定義了系統(tǒng)內(nèi)角色的漫游行為,如漫游的方式、漫游的速度等)、導(dǎo)航邏輯(角色的導(dǎo)航方法)、交互邏輯(主要包括用戶與界面的交互、角色同系統(tǒng)內(nèi)對象的交互)等。
2.2 功能分析
2.2.1 手動漫游
手動漫游即通過外部設(shè)備的控制信息操縱系統(tǒng)內(nèi)角色的移動。在虛擬場景中,可使用鍵盤的“w”“A”“S”“D”鍵控制角色的移動,按下鼠標(biāo)右鍵并拖拽可進(jìn)行視角的旋轉(zhuǎn),按下空格鍵可以進(jìn)行跳躍。在漫游過程中,角色碰到障礙物要停止前進(jìn)。本系統(tǒng)使用了Unity3D中自帶的的第一人稱角色控制預(yù)設(shè)體,其中定義了角色的移動、跳躍、降落時的加速度等信息,使得角色的移動過程具有真實(shí)感。
2.2.2 自動漫游
自動漫游是在漫游事件觸發(fā)后無任何輸入的情況下,允許角色沿著既定路線進(jìn)行漫游??赏ㄟ^用戶界面層的組件以觸發(fā)自動漫游功能,角色會自動按照預(yù)置的路徑進(jìn)行移動。自動漫游功能的實(shí)現(xiàn)借助了Unity3D中的外部插件一行為樹來實(shí)現(xiàn),其主要應(yīng)用于系統(tǒng)內(nèi)對象的AI行為控制,通過對行為樹上節(jié)點(diǎn)的組合,可以實(shí)現(xiàn)對角色的控制。
2.2.3 虛擬導(dǎo)航
虛擬導(dǎo)航指的是以角色的當(dāng)前坐標(biāo)點(diǎn)為及目標(biāo)點(diǎn)為輸入,通過對應(yīng)的導(dǎo)航方法,生成從起點(diǎn)到目標(biāo)點(diǎn)的路線,該功能也是通過行為樹實(shí)現(xiàn)的。與自動漫游不同的是,進(jìn)行虛擬導(dǎo)航首先要通過Unity3D烘焙出場景的導(dǎo)航網(wǎng)格。為簡化操作、降低使用門檻,可在場景中預(yù)先生成靜態(tài)的地圖,外部使用者僅需以可視化的方式選擇地圖上的目標(biāo)位置即可進(jìn)行導(dǎo)航。
3 系統(tǒng)實(shí)現(xiàn)與測試
基于上述構(gòu)建方法,本文以華北電力大學(xué)為例,構(gòu)建出了三維虛擬校園,如圖2所示。
4 結(jié)語
基于本文設(shè)計方法的虛擬校園使用3DMax進(jìn)行模型構(gòu)建,并借助Uniry3D三維虛擬場景的搭建。此外,控制邏輯的引入解決了外部使用者與虛擬場景的交互問題。構(gòu)建出的虛擬現(xiàn)實(shí)交互系統(tǒng)效果逼真,且兼具實(shí)用性。然而,該方法仍存在一定的局限性,如系統(tǒng)的功能相對單一、且數(shù)據(jù)不具備持久性,在今后的研究中,豐富交互邏輯、與數(shù)據(jù)庫連接實(shí)現(xiàn)數(shù)據(jù)的動態(tài)存取將會是重點(diǎn)。
參考文獻(xiàn)
[1]趙沁平.虛擬現(xiàn)實(shí)綜述[J].中國科學(xué)(F輯:信息科學(xué)),2009 (01): 2-46
[2]潘飛,王繼成,高等學(xué)校虛擬現(xiàn)實(shí)全景技術(shù)開發(fā)與實(shí)踐[J].沈陽農(nóng)業(yè)大學(xué)學(xué)報(社會科學(xué)版),2017,19 (06): 673-677.
[3]張丹,華北科技學(xué)院虛擬校園漫游系統(tǒng)的設(shè)計與實(shí)現(xiàn)[D].電子科技大學(xué),2012.