摘 要: 基于Virtools技術(shù)開發(fā)的虛擬校園漫游系統(tǒng),具有良好的交互性、構(gòu)想性和沉浸感,受到越來越多開發(fā)人員的青睞。但在場景建模部分,始終沒有得到有效的縮減。因此,提出以我院北校區(qū)作為原型,應(yīng)用3ds Max軟件的UVW展開貼圖技術(shù)實現(xiàn)基于圖像的虛擬校園場景建模,在Virtools平臺上實現(xiàn)虛擬校園漫游系統(tǒng)。該建模技術(shù)能減輕繁雜的建模工作,建立較逼真的虛擬校園場景,使系統(tǒng)更容易實現(xiàn)。
關(guān)鍵詞: 場景建模;貼圖技術(shù);虛擬漫游
0 引言
虛擬現(xiàn)實技術(shù)已在醫(yī)學(xué)、建筑、制造、娛樂、電子競技、軍事等領(lǐng)域獲得了廣泛的應(yīng)用。“3D電影”、“3D打印”、“漫游導(dǎo)航”等熱點話題正逐漸走進人們的日常生活。構(gòu)造一個虛擬環(huán)境漫游系統(tǒng),就是利用高性能計算機軟硬件創(chuàng)建一個使用戶身臨其境的、具有沉浸感和良好人機交互能力的軟件系統(tǒng)。隨著3ds Max 、Virtools等軟件功能日益強大,越來越多從事虛擬場景漫游、導(dǎo)航的人員正嘗試應(yīng)用該軟件技術(shù)實現(xiàn)虛擬場景漫游系統(tǒng)。在歐美等發(fā)達國家以及中國臺灣地區(qū)已經(jīng)普及到相當(dāng)規(guī)模。在國內(nèi),越來越多的開發(fā)人員選擇使用Virtools平臺實現(xiàn)虛擬場景漫游系統(tǒng)[1]。巧妙應(yīng)用3ds Max貼圖技術(shù)建立虛擬校園場景,可提高建模效率,減少插件使用,從而降低在 Virtools平臺上整合場景資源的難度,提升系統(tǒng)性能。
1 系統(tǒng)總體設(shè)計說明
虛擬校園漫游系統(tǒng)應(yīng)用虛擬現(xiàn)實技術(shù)開發(fā)實現(xiàn),它具備虛擬現(xiàn)實技術(shù)的特性,滿足以下相關(guān)要求:
(1)真實感。用戶在瀏覽校園時,要有身臨其境的感受才能融入校園,體會到虛擬校園帶來的樂趣。
?。?)靈活的漫游功能。用戶可以選擇瀏覽校園全景全貌,也可以在校園場景中自主漫游。對校園全景全貌的瀏覽能快速了解學(xué)校各種教學(xué)設(shè)施的地理位置,自主漫游是對校園環(huán)境、教學(xué)設(shè)施的詳細了解。
(3)實時的交互性。在校園場景中漫游時,能夠通過鼠標(biāo)或鍵盤控制漫游的方位和速度,遇到障礙物的碰撞設(shè)計是本系統(tǒng)的關(guān)鍵,一個好的碰撞檢測系統(tǒng)能給瀏覽者增加更真實的沉浸感。
本系統(tǒng)需要按照圖1的技術(shù)路線圖來進行開發(fā)。
?。?)校園數(shù)據(jù)采集
首先應(yīng)用Google Earth軟件獲取我院北校區(qū)的電子地圖,利用數(shù)碼相機采集學(xué)校建筑、實景圖片,再把采集到的數(shù)據(jù)分類,作為建模素材。
?。?)平面圖形制作
將獲取的電子地圖導(dǎo)入AutoCAD軟件描繪建筑物、場地、道路等實景輪廓,最終建立校園平面地圖。將采集到的建筑物照片應(yīng)用Photoshop軟件加工,作為三維建模的模型紋理、貼圖使用。
?。?)三維模型制作
在3ds Max軟件中導(dǎo)入制作好的校區(qū)平面地圖,根據(jù)建筑物的位置、輪廓繪制三維模型,建筑物的高度可由采集到的照片經(jīng)過估算得到。
(4)漫游系統(tǒng)實現(xiàn)
在3ds Max軟件中建好模型后進行整合;在3ds Max軟件中安裝插件,將3D模型發(fā)布成*.nmo文件;把發(fā)布后的文件導(dǎo)入Virtools軟件實現(xiàn)虛擬校園場景漫游。
2 校園場景建模關(guān)鍵技術(shù)
2.1 校園地圖的制作
校園地圖的制作在虛擬校園的開發(fā)過程中是相當(dāng)關(guān)鍵的一個環(huán)節(jié),校園地圖的位置是否準(zhǔn)確直接影響到虛擬校園的顯示效果,因為虛擬校園的建模是完全基于虛擬校園地圖建立的。在繪制校園地圖時可以從學(xué)校基建處獲取相關(guān)信息,如果沒有可以應(yīng)用Google Earth獲取衛(wèi)星地圖[2]。獲取衛(wèi)星地圖時要注意比例的一致性。嚴格按照衛(wèi)星地圖的位置描繪校園教學(xué)設(shè)施和道路輪廓等信息。為能精確地繪制校園地圖,應(yīng)把衛(wèi)星地圖導(dǎo)入CAD軟件中作為參考來繪制。
2.2 建筑平面框圖
通過Photoshop處理好衛(wèi)星地圖后,為得到一個精確的校園地圖,將它導(dǎo)入AutoCAD2008作為繪制地圖的外部參照文件。應(yīng)用AutoCAD2008的直線和曲線工具仔細繪制校園的輪廓、教學(xué)設(shè)施、運動場、道路等輪廓。
2.3 道路、運動場平面框圖
在繪制校園地圖時應(yīng)區(qū)分校園的各種景物和教學(xué)設(shè)施,單獨創(chuàng)建不同的層來區(qū)分不同的景物。例如道路、校園建筑等實景可設(shè)置成不同顏色的圖層。將所有的實景對象繪制完成后,就得到一張校園地圖。其中基礎(chǔ)教育學(xué)院北校區(qū)的平面地圖如圖2所示。
將校園地圖文件導(dǎo)入3ds Max2009軟件作為底圖參照,繪制出等比例的虛擬校園模型。
2.4 建筑模型
傳統(tǒng)三維場景建模方法較為繁瑣,需要花費大量的時間和精力。采用基于圖像的建模方法,可提高建模效率,使虛擬場景顯得更加真實?;趫D像建模是指利用圖像來恢復(fù)出物體的幾何模型, 這里的圖像包括真實照片、繪制圖像、視頻圖像以及深度圖像等。而廣義的基于圖像建模技術(shù)還包括從圖像中恢復(fù)出物體的視覺外觀、光照條件以及運動學(xué)特性等多種屬性。與基于圖像建模技術(shù)密切相關(guān)的是基于圖像的繪制技術(shù),由于基于圖像的繪制可以在沒有任何三維幾何信息或少量幾何信息的情況下進行,僅基于若干幅原始圖像繪制出三維場景的新視點圖像, 因此, 基于圖像繪制技術(shù)可以實現(xiàn)傳統(tǒng)方法尚無法建模的高度復(fù)雜場景。但它通常需要對場景做大量的數(shù)據(jù)采樣, 而且無法實現(xiàn)對場景細節(jié)的模型編輯。
在3ds Max軟件中,基于圖像的建模方法可應(yīng)用貼圖技術(shù)實現(xiàn)。這種建模方法只需繪制建筑輪廓而不必繪制細節(jié)部分,其關(guān)鍵是處理好貼圖紋理和光照效果[3-5]。根據(jù)場景模型形狀和所采集處理后的圖片,在貼圖時可使用UVW展開貼圖(Unwrap UVW)方式。
學(xué)生公寓模型相對復(fù)雜,即使應(yīng)用傳統(tǒng)的建模方法實現(xiàn),模型也將占用較多的計算機內(nèi)存空間,使系統(tǒng)的運行速度大為降低。應(yīng)用UVW展開貼圖的方法只需建立一個模型的框架,通過使用UV展開貼圖的方法實現(xiàn)復(fù)雜模型的建模。UV展開貼圖法能顯著降低模型所占用的內(nèi)存空間,明顯提高運行效率,是一種基于圖像的建模方法??砂匆韵沦N圖技術(shù)實現(xiàn)學(xué)生公寓建模。
?。?)在3ds Max 軟件中導(dǎo)入制作好的校園地圖,在頂視圖找到學(xué)生公寓的輪廓,繪制成一個封閉的二維圖形,再選擇編輯器列表里的Extrude(擠出)命令,擠出的高度由建筑物的高度決定,得到三區(qū)學(xué)生公寓的三維輪廓。
?。?)在3ds Max軟件中安裝Texporter插件,應(yīng)用該插件可得到一張UVW展開圖。
?。?)把采集到的學(xué)生公寓真實照片,應(yīng)用Photoshop軟件的剪切、自由變形、旋轉(zhuǎn)等工具進行圖片形狀、位置等的調(diào)節(jié),加工生成學(xué)生公寓12個面的圖片,對應(yīng)粘貼到圖片中,得到UVW展開圖。把該圖片作為材質(zhì)貼圖賦予場景中的學(xué)生公寓模型,貼圖后最終得到學(xué)生公寓,如圖3所示。學(xué)生公寓陽臺、窗臺、樓層等復(fù)雜結(jié)構(gòu)清晰可見。教學(xué)樓等建筑設(shè)施可按照上述編輯技術(shù)實現(xiàn)。
2.5 綠化植物
在虛擬校園場景中,只有教學(xué)樓、學(xué)生公寓等建筑設(shè)施是不夠的,要完整地表現(xiàn)一個學(xué)校的校容校貌,場景中就應(yīng)該有樹木、花草、道路等虛擬實景物體。而樹、草皮這些實景物體比較復(fù)雜。如果應(yīng)用傳統(tǒng)建模方法建立樹模型,其難度可想而知,即使建立出來也將占用非常多的計算機資源,因此可以應(yīng)用3ds Max的透明貼圖技術(shù)在場景中建立樹等實景物體。這里介紹樹的建立方法。
在一般的虛擬場景動畫中可以使用很多的樹木插件來制作植物,如Treestorm 、Forest等插件,可以做出逼真度非常高的植物效果[6]。但是考慮到虛擬校園漫游場景的特殊性,要求盡量減少場景中模型的面數(shù),因此,本系統(tǒng)使用“片面拼插貼圖法”來制作虛擬校園中的植物。該方法主要適用于單個的、或者細節(jié)要求比較多的高大喬木以及點綴的植物,主要依靠面片的插接,然后通過貼圖通道來表現(xiàn)樹木細節(jié)??砂慈缦沦N圖技術(shù)實現(xiàn)“片面拼插貼圖法”。
(1)首先在虛擬校園場景中創(chuàng)建一個面片,長度分段和寬度分段都設(shè)為1, 打開材質(zhì)編輯器,選用空白的材質(zhì)球,打開“漫反射”貼圖通道—“位圖”,選用一張貼圖,再打開“不透明度”貼圖,選用通過Photoshop處理后的貼圖。
?。?)賦予貼圖的面片。在修改命令面板中添加“UV貼圖”命令,貼圖方式為“柱形”,調(diào)整對齊方式為“位圖對齊”,這樣可以將面片的大小按照所使用貼圖的大小進行設(shè)置。調(diào)整完成后,右鍵“轉(zhuǎn)化為可編輯多邊形”。
?。?)關(guān)閉“僅影響軸”按鈕,再打開“角度捕捉切換”,按住“Shift”鍵,同時旋轉(zhuǎn)。依次選擇“克隆選項”、“實例”、“確定”,校園環(huán)境樹制作完成。環(huán)境樹制作完成后根據(jù)場景需要可適當(dāng)添加樹木,但不宜過多,樹木太大會降低系統(tǒng)運行速度,影響漫游效果。可按此方法制作其他實景物體。
2.6 天空效果
在建立虛擬校園時,天空效果的表現(xiàn)是必須的,主要有以下幾種建模方法:
?。?)半球物體貼圖。在場景中建立半球體,使用法線翻轉(zhuǎn)工具翻轉(zhuǎn)半球體,直接貼一張?zhí)炜請D片即可顯示出天空效果。
?。?)插件。搜集能生成天空的插件,在3ds Max中安裝插件后直接創(chuàng)建天空效果。
(3)通道應(yīng)用。在3ds Max中設(shè)置通道,通過貼圖通道導(dǎo)出圖片,經(jīng)Photoshop軟件處理,然后在3ds Max通過貼圖創(chuàng)建天空效果。
因為在制作好虛擬校園場景后需要把場景導(dǎo)入Virtools軟件,為方便在該軟件中實現(xiàn)漫游,應(yīng)使用第一種方法,即“半球物體貼圖”法,可按以下編輯技術(shù)操作。
?。?)在3ds Max中,打開虛擬校園場景文件,在頂視圖中建立球體,選擇球體右擊,把球體轉(zhuǎn)化為可編輯多邊形。找到修改器列表的可編輯網(wǎng)格編輯器,展開修改器列表中的加號,選擇多邊形的“點”對象,在前視圖中選擇球體的下半部分并刪除,場景中剩下一個需要制作天空效果的半球體。
(2)選擇半球體,在修改器列表下點擊可編輯網(wǎng)格對象,展開加號,點擊可編輯網(wǎng)格的“面”對象,使用快捷鍵“Ctrl+A”全選球體的所有面,使用“翻轉(zhuǎn)”工具翻轉(zhuǎn)半球體所有面的法線。使場景中能直接看到天空效果?;氐綀鼍爸兄匦逻x擇半球體,用右鍵選擇“對象屬性”,在打開的對話框中選取“背面消隱”復(fù)選框。最后點擊確定關(guān)閉屬性對話框。
(3)打開“材質(zhì)編輯器”,在“漫反射貼圖”通道中添加一張?zhí)炜召N圖。在“自發(fā)光貼圖”通道中,使用“實例”復(fù)制拖動“漫反射貼圖”到“自發(fā)光貼圖”通道中,最后單擊確定關(guān)閉材質(zhì)編輯器對話框。如需調(diào)節(jié)天空在場景中的形狀,可使用縮放工具,在Z軸或其他方向擠壓半球體。天空效果制作完成,虛擬校園部分場景如圖4所示。
3 資源整合及導(dǎo)入
在3ds Max中建立好虛擬校園場景后,就可以導(dǎo)入到 Virtools中進行交互式漫游設(shè)計。3ds Max文件導(dǎo)入到Virtools中需要安裝Max Exporter的導(dǎo)出插件Max Exporter,它是一個專門把在3ds Max中創(chuàng)建的模型、貼圖、燈光以及動畫導(dǎo)出為Virtools軟件支持的插件。安裝后可以在3ds Max的安裝目錄Plugins中檢測到是否有“Max2Virtools.dle”文件。
把虛擬校園場景導(dǎo)入Virtools軟件中后,有可能在Virtools中的效果會發(fā)生一些變化,例如樹的面片在3ds Max中是透明的,但在Virtools 中樹的面片出現(xiàn)了,會影響顯示效果,這時可設(shè)置樹的透明度,讓樹不再以面片的形式出現(xiàn)。
4 漫游系統(tǒng)的實現(xiàn)
在Virtools軟件中要實現(xiàn)虛擬漫游功能,可以通過使用攝像機來與場景中的物體進行交互。在創(chuàng)建面板上點擊攝像機按鈕,在場景中創(chuàng)建一個攝像機。為了使虛擬校園有良好的交互效果,本系統(tǒng)引入一個人物角色“Peter”,使這個角色在虛擬校園中能自由漫游。
對角色設(shè)置碰撞檢測,這是虛擬交互設(shè)計中一個非常重要的工作,只有真實的碰撞檢測,才能使虛擬交互更加接近真實[7],為此要對系統(tǒng)設(shè)置基本的碰撞檢測。正確設(shè)置后,角色能與場景中的物體發(fā)生碰撞,并不能穿越物體。至此,實現(xiàn)了系統(tǒng)的場景建模、角色建立、交互式虛擬漫游等功能。系統(tǒng)運行界面如圖5所示。
5 結(jié)論
應(yīng)用上述3ds Max貼圖技術(shù)建模可避開繁雜的場景建模過程,減輕了資源整合的難度,使角色在場景中漫游時更加流暢,系統(tǒng)更容易實現(xiàn)。
參考文獻
[1] 李洋,王賜勝. 虛擬校園漫游系統(tǒng)的研究和實現(xiàn)[J]. 網(wǎng)絡(luò)財富, 2010(9):133-134.
[2] 游蘭, 彭慶喜.基于Google Maps API的地圖解析研究與實現(xiàn)[J].湖北大學(xué)學(xué)報(自然科學(xué)版), 2010,32(2):161-164.
[3] 曾影,張雪松,單莉. 基于3D Max的校園場景可視化的設(shè)計與實現(xiàn)[J].湖北大學(xué)學(xué)報(自然科學(xué)版), 2014,36(2):190-194.
[4] 李彥娜. 基于Virtools的虛擬校史公園漫游系統(tǒng)的研究與實現(xiàn)[D]. 成都:四川師范大學(xué), 2011.
[5] 李昌國,張曉林,譚良,等. 基于GIS和VIRTOOLS技術(shù)的虛擬校園漫游開發(fā)方法的研究[J]. 計算機工程與設(shè)計, 2007,28(13):3223-3226.
[6] 李彥娜,詹小川. 基于3ds Max和Virtools的虛擬校史公園漫游系統(tǒng)的研究[J]. 電腦知識與技術(shù), 2011,7(3):1658-1660.
[7] 陀煒,劉佳龍,陳超超,等. 基于Virtools的虛擬校園漫游系統(tǒng)的研究與實現(xiàn)[J]. 計算機與現(xiàn)代化, 2012(12):48-50.