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