(湖南國防工業(yè)職業(yè)技術(shù)學(xué)院,湖南 湘潭 411207)
虛擬校園漫游系統(tǒng)利用計算機(jī)圖形圖像、虛擬現(xiàn)實等多種數(shù)字化技術(shù)將校園內(nèi)的主要場景進(jìn)行模擬構(gòu)建,并基于相應(yīng)的人機(jī)交互技術(shù)讓用戶可以根據(jù)自己的需求在方便的時間與地點訪問校園系統(tǒng),并通過界面進(jìn)行一定的交互操作[1]。下面結(jié)合實際,就虛擬校園建模與漫游技術(shù)相關(guān)問題做具體分析。
在進(jìn)行建模時,以幾何建模技術(shù)為基礎(chǔ)將場景實體的主要輪廓構(gòu)建起來,然后對其進(jìn)行繪制渲染,讓場景物體的細(xì)節(jié)更加逼真。研究與實踐證明,在進(jìn)行校園內(nèi)建筑建模時,使用混合建模技術(shù)能有效降低建模難度,提高建模效率與質(zhì)量,讓構(gòu)建出的場景實物更加逼真,從而讓系統(tǒng)更加實用。在進(jìn)行建模時,三維模型構(gòu)建軟件平臺是影響場景模型顯示效果的最關(guān)鍵因素。因此在建模過程中一定要做好對軟件的選擇與應(yīng)用。當(dāng)前,市面上表常見的幾款建模軟件是Maya,Sketch up,3ds Max,這幾款軟件各有優(yōu)缺點以及一定的適用范圍。如Maya比較適用于特效合成以及制作場景動畫;Sketch up專攻室內(nèi)場景建模;而3ds Max就比較適合用于建筑類場景建模。相較于其他幾款軟件,3ds Max具有較好的渲染效果,較強(qiáng)的建模能力以及較高的實用性。因此本項目系統(tǒng)選擇3ds Max軟件進(jìn)行建模[2]。
Unity 3d軟件有較多的編輯指令以及用戶操作界面與可視化功能命令集,其的適用范圍也比較廣,可運用于創(chuàng)建建筑、動畫、場景漫游等三維模型的互動內(nèi)容。隨著科學(xué)技術(shù)的發(fā)展,Unity 3d軟件的功能也越來越豐富,如其擁有了交互的圖形化編輯環(huán)境等,能有效滿足各項使用需求。因而本項目系統(tǒng)選用Unity 3d作為設(shè)計與開發(fā)平臺。Unity 3d具有十分詳細(xì)的邊際屬性功能,支持動態(tài)檢查場景設(shè)計或運行效果,同時也能在項目運行過程中根據(jù)實際情況對項目做出必要修改,可以說具有很強(qiáng)的實用性??偟膩碚f,Unity 3d功能強(qiáng)大,能同時滿足用戶虛擬物體交互以及場景漫游功能,更重要的是該軟件具有強(qiáng)大的地形編輯器以及豐富的天空盒資源,可以構(gòu)建出逼真的三維場景[3]。Unity 3d技術(shù)的多感知性會直接影響到用戶的沉浸感。當(dāng)對人體多種感知,如嗅覺、觸覺、聽覺、視覺等感官感受模擬的更真實、更逼真時,用戶的沉浸感也就更強(qiáng)。
虛擬校園漫游系統(tǒng)要具備一定的交互功能、展示功能等。用戶根據(jù)該系統(tǒng)漫游場景中的提示信息能確定校園地理位置,能了解校園內(nèi)部詳細(xì)情況。系統(tǒng)場景漫游分為四大模塊:攝像機(jī)、第一人稱角色控制器、視角控制和地圖導(dǎo)航。攝像機(jī)模塊與第一人稱角色控制器相互搭配,讓使用者能夠完成場景漫游、角色控制、場景特征觀察等,系統(tǒng)中的視角控制模塊則是通過對攝像機(jī)對象的控制來模擬人眼所觀察到的場景,并以此達(dá)到目的。通過對視角控制模塊的設(shè)計與開發(fā),使用者可在虛擬的漫游場景中進(jìn)行360°無死角觀察。系統(tǒng)中地圖導(dǎo)航模塊的主要功能作用是:當(dāng)人進(jìn)入場景時,可以定位并展示人的所在位置,該模塊為用戶提供的服務(wù)是三維地理位置服務(wù)。系統(tǒng)場景交互又由四大功能模塊構(gòu)成,分別是模型控制、場景轉(zhuǎn)換、主界面設(shè)置以及信息顯示模塊。其中的模型控制模塊主要是讓用戶身處系統(tǒng)場景中時能夠完成對場景中各項物體的控制,如調(diào)節(jié)燈光、開關(guān)門、移動物體等。場景轉(zhuǎn)換主要是為用戶進(jìn)入到新的場景服務(wù)。當(dāng)用戶想要進(jìn)入到新的場景時,通過這一模塊用戶可直接將場景中的匾額、路牌等進(jìn)行點擊轉(zhuǎn)換進(jìn)而完成場景的轉(zhuǎn)換。系統(tǒng)中的主界面設(shè)置模塊主要與背景音樂、地圖操作等有關(guān),如當(dāng)用戶想要開啟背景音樂或全局地圖時就可以通過這一模塊來滿足需求[4]。
在進(jìn)行該系統(tǒng)的設(shè)計與開發(fā)時,主要按照以下思路進(jìn)行:首先,在前期的分析階段通過實地觀察、查閱文獻(xiàn)資料等方法將系統(tǒng)的功能與非功能需要確定下來。其次,在構(gòu)建三維模型階段的階段主要完成對各項參照物的獲取,各項數(shù)據(jù)信息的測量等。基于顯示數(shù)據(jù)利用3ds Max完成場景建模,并在建模技術(shù)后對場景模型圖片做適當(dāng)?shù)匿秩九c后期處理,讓最終的效果更加逼真。第三個階段就是漫游交互階段,在這一階段以Unity 3d游戲開發(fā)平臺為基礎(chǔ)進(jìn)行設(shè)計與開發(fā),讓系統(tǒng)具備第一人稱在場景中的手動、自動漫游功能,同時也實現(xiàn)系統(tǒng)的虛擬交互功能,以便讓用戶的場景體驗更加真實。最后,發(fā)布、測試與優(yōu)化。
虛擬校園漫游系統(tǒng)設(shè)計的最終目的是為了使用戶能隨時隨地進(jìn)行校園的虛擬漫游,并獲得良好的交互體驗。因此校園虛擬漫游系統(tǒng)設(shè)計一定要力求達(dá)到場景畫面逼真,運行速度流流暢,系統(tǒng)靈活方便易于操作。為達(dá)到以上要求,本系統(tǒng)采用三層模型架構(gòu)設(shè)計的方式進(jìn)行,如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)設(shè)計
2.3.1 建模處理
在系統(tǒng)設(shè)計時,運用地圖軟件、航拍無人機(jī)、數(shù)碼相機(jī)等設(shè)備拍攝獲得場景照片并繪制出場景平面圖,然后利用相關(guān)圖像處理軟件對所獲取的圖像進(jìn)行處理建模,獲得三維場景模型。在本系統(tǒng)設(shè)計中,首先,對學(xué)校內(nèi)的相關(guān)的道路、地形、主要建筑、植被、照明設(shè)備、裝飾物、池塘等進(jìn)行了拍攝,對學(xué)校主要建筑、道路等室外場景的尺寸以及建筑物的高度等進(jìn)行了測量記錄。獲得各項數(shù)據(jù)信息后利用3ds Max進(jìn)行了場景建模,在建模過程中對各圖片、圖像做了一定的優(yōu)化。完成建模后將拍攝的圖片進(jìn)行了保存,利用其作為場景模型的紋理貼圖。其次,對已經(jīng)完成的場景三維模型進(jìn)行貼圖渲染與紋理材質(zhì)方面的處理,讓其更加逼真。最后,分類導(dǎo)出模型。在建模時首先要合理選用場景建模方法。經(jīng)過分析研究后發(fā)現(xiàn),在建模時將基于圖像與基于幾何的兩大建模技術(shù)混合使用,使其優(yōu)勢互補(bǔ)或獲得最佳的建模效果。因此,在設(shè)計與開發(fā)過程中使用基于幾何建模技術(shù)構(gòu)建出物體的主要輪廓特征,再利用基于圖像的建模技術(shù)精細(xì)表現(xiàn)出模型的細(xì)節(jié)特征,讓模型更具真實感、現(xiàn)實感。
在進(jìn)行系統(tǒng)三維模型貼圖時,結(jié)合使用3ds Max與Photoshop兩項技術(shù)進(jìn)行。3ds Max有功能非常強(qiáng)大的材質(zhì)編輯器,能滿足對多種材質(zhì)的編輯處理,并且能通過對模擬物體平整度、透明度等的設(shè)置讓模型有更真實的質(zhì)感。在應(yīng)用該技術(shù)對系統(tǒng)模型進(jìn)行處理時,先通過位圖將計算機(jī)中的貼圖資源確定出來,再對三維模型做相應(yīng)處理。
對三維模型做適當(dāng)?shù)膬?yōu)化,在優(yōu)化時主要注意場景中兩模型接縫的位置,要注意該位置的點與面是否對其,如沒有對齊,要將多余的點及時刪除,并對重合的點做焊接處理,將邊與點的數(shù)目減少,以保證最終的建模效果。除此之外,還可在這一階段將場景中某些模型對象看不到的面做適當(dāng)?shù)膭h除,確保場景中不會有無效面。對場景中模型的段數(shù)進(jìn)行精簡,對于模型的平直部位,直接減少分段,在彎曲部位也要盡可能避免出現(xiàn)過多段數(shù)。最后是設(shè)置與調(diào)整貼圖文件的分辨率,一般要將其調(diào)整為2的倍數(shù)。
完成模型的調(diào)整后及時導(dǎo)出模型,將模型的導(dǎo)出格式設(shè)置為FBX等Unity 3d支持的文件格式,為后期的人機(jī)交互系統(tǒng)開發(fā)提供便利。
2.3.2 三維場景模型導(dǎo)入與場景配置
進(jìn)行三維場景模型導(dǎo)入處理時,最常見的方式是將FBX文件及其貼圖資源進(jìn)行拷貝,儲存到Unity 3d項目Assets下面的一個子文件夾之中。這樣的方式方便簡潔且能盡可能確保貼圖安全,保證貼圖不會被丟失。在Unity 3d軟件平臺中,通過Game object-Camera的方式創(chuàng)建出一個攝像機(jī)。在該系統(tǒng)中,筆者采用的是第一人稱漫游方式,當(dāng)用戶進(jìn)入系統(tǒng)時,攝像機(jī)就是用戶的眼睛,虛擬角色在虛擬場景中能夠看到的范圍直接由攝像機(jī)對象的照射范圍決定。用戶進(jìn)入系統(tǒng)后,在角色控制器上添加控制腳本,這樣就能讓虛擬角色在場景中的位置發(fā)生改變,攝像機(jī)對象的視角也隨之發(fā)生變化,虛擬角色就能在虛擬場景中進(jìn)行漫游與觀察。
2.3.3 虛擬校園漫游交互功能
要想讓用戶獲得良好的漫游體驗,就必須優(yōu)化設(shè)計系統(tǒng)操作界面。在設(shè)計時,先于貼圖文件夾中放入操作界面的背景圖片資源;再建立Title,構(gòu)建系統(tǒng)的場景背景;最后在該場景中進(jìn)行相應(yīng)UI設(shè)計,讓系統(tǒng)操作界面更加精美、合理。
在進(jìn)行場景漫游設(shè)計時,自動漫游設(shè)計可以通過為項目添加一個自動漫游插件來實現(xiàn),其中漫游過程中的路線點需要手動添加結(jié)合手動漫游與自動漫游兩種方式。在手動漫游模式下,用戶控制虛擬遙感就能根據(jù)自己的想法或需求在虛擬場景中漫游。在自動模式下,用戶根據(jù)系統(tǒng)以及設(shè)定好的路線進(jìn)行行走與觀察。
綜上所述,3ds Max與Unity 3d技術(shù)具有強(qiáng)大的功能,較高的實用性,能為虛擬校園建模與漫游系統(tǒng)設(shè)計與開發(fā)帶來很大幫助。合理應(yīng)用這兩項先進(jìn)技術(shù)可讓虛擬場景更加真實、逼真,讓校園內(nèi)的各項信息得到充分展示,也讓用戶的漫游體驗更加真實有趣。因此,在當(dāng)前背景下應(yīng)持續(xù)推進(jìn)對3ds Max與Unity 3d技術(shù)的研究與應(yīng)用。