張盼盼 王俊艷
(運城學院,山西 運城 044000)
建立虛擬漫游系統是構建智慧旅游的基礎,三維虛擬漫游系統的建立和探究對智慧旅游建設有重要的意義。三維虛擬漫游系統是一個三維可視化的、人機互動的虛擬漫游系統[1]。該系統的建立既能樹立良好的城市形象,提高景點在省內外的知名度,方便游客在旅游前熟悉景點的整體規劃,還能作為景點未來建設規劃的輔助性工具[2]。
漫游系統有利于展示景點的風采,宣傳文化,提高競爭力。虛擬漫游系統的應用,使游客在旅游前就可以完全掌握景點特色和相關的歷史人文,為游玩做好充足的準備。虛擬漫游系統,將以最直觀的表現為景點的宣傳和規劃提供高效的建議,有著廣泛的應用前景和推廣價值。本文以運城市池神廟為例進行了虛擬漫游系統的設計,在系統的功能性方面,提供了角色交互和小地圖等功能,為系統的交互功能設計方面提供了有效的設計思路和制作方法,操作簡便,填補了運城池神廟在虛擬景點漫游應用方面的空白[3-5]。
要構建虛擬漫游系統,須先對漫游中場景進行構建,場景的構建大致有兩種方式:一種是實際拍攝的圖片組成,優點是系統負擔小,開發方便,但是缺乏細節;另外一種是通過三維軟件創建的模型來模擬場景,代入感很強,但是制作成本較大,系統消耗也大。為加強用戶體驗,本漫游系統中的建模部分使用Cinema4D軟件實現。
在構建場景之前,首先對池神廟進行考察與數據收集,包括物體的大小、形狀和材質等。釆集數據是整個虛擬漫游系統建立過程中一個很重要的環節,釆集數據所使用的方法將影響數據采集的質量,進而影響到虛擬漫游系統中用戶的體驗。
建筑物是環境的主體之一,是不可缺少的一部分。相當一部分建筑物模型由于工具和資源的限制,不能對其真實的高度進行直接測量,一般通過少量測量、大量估算的方式對其尺寸進行大致計算。本文通過一階樓梯的高度和樓梯的數量,大致確定了樓梯離地面的高度,使用經過裁剪以后的圖片對漫游系統中的地板進行鋪設。
數據采集完成后,接下來就需要對物體進行建模。建模前要確定好模型的精確程度,模型的精確程度關系到后期紋理貼圖的效果。模型過于簡單,很多細節都不能充分表現出來,模型易失真,影響用戶體驗;模型過于精確,易產生大量的冗余,增加了工作量,影響系統性能。為兼顧用戶體驗和系統性能,本系統釆取折中方法,即重要的標志性建筑物體將會精確建立模型,如池神廟的三大廟宇,包括靈慶公神祠、雨師太陽神祠、條山風洞神祠;不太重要的建筑物體僅大致刻畫,細節部分和一些不重要的部分將會視情況省略,如海關樓周圍的空房子等。
建筑物的三維建模,主要由建模軟件Cinema4D完成。對于建筑物精確程度要求不高的,只需要建好大致的模型,再輔助貼圖就可以完成;對于建筑物精確程度要求較高的,需要仔細建筑模型的框架。本文以靈慶公神祠大門和樹木的建模過程為例來介紹具體建模過程,其他物體的建模過程不再具體敘述。
2.3.1 靈慶公神祠大門建模
池神廟主寺廟靈慶公神祠的門構造復雜,對模型要求較高。由于大門在整體構造上具有層次感,因此對大門構建分兩部分完成,包括門的上部和下部。
門的下部具體操作如下:首先,通過快捷鍵C就可以將門變為可編輯對象,選中面以后,通過擠壓工具對門進行進一步塑形。這里通過擠壓和內部擠壓來塑造門下部的不同深度,效果如圖1所示。

圖1 門下部的構建
門的上部具體操作如下:制作門上面的窗戶框架,需要使用鋼筆工具創建兩個不同大小的矩形,并創建連接工具,把矩形放在其下,再通過擠壓工具使矩形實體化,設置厚度等數據使兩者融合在一起。接著制作門上部窗戶的格子花紋,需要使用連接工具制作一個矩形的格子,再使用擠壓工具制作,最后用克隆工具構建成所需模型。當門的整體模型創建好以后,再對模型進行貼圖,建模就基本完成,整體效果如圖2所示。
2.3.2 輔助物的建模
3D數字漫游的三維場景實現也分為建筑物建模以及樹木、桌子凳子等輔助物體的建模。這些樹木、標志、石碑、石桌石凳等模型,對池神廟虛擬漫游系統中的環境塑造起著重要的作用,可以讓用戶更有體驗感和真實性,使漫游系統的色彩更加豐富、更加真實。以樹木為例介紹。
樹木模型的添加有兩種方式:一種建模在是Unity3D完成,利用Unity3D平臺自帶強大的資源庫完成,樹木等資源可以直接導入,如圖3所示;另一種可以在模型網站如3D學苑上下載相關的樹木資源,通過Cinema4D進行修改貼圖,如圖4所示。第一種方式可以快速創建樹木,但是精細度不夠;第二種雖然麻煩,但是顯示效果好,本漫游系統中兩種方式都會用到,重要的位置將會采用精確度較高的方式創建,不太重要的位置會在Unity3D中快速創建。

圖3 Unity3D創建樹木

圖4 Cinema4D創建樹木
模型的構建是在許多不同的文件夾下完成的,所有物體的模型都建造好以后,需要對這些模型在Cinema4D依照實物進行場景集成,相比選擇漫游軟件集成的方式,Cinema4D操作更加方便,而且更注重細節,如物體的模型之間可能存在大小不適配的問題,在Cinema4D中就可以很好地解決。
導入模型過程中會出現模型的格式問題,在三維建模軟件中建立的模型是要導入軟件Unity3D中的,模型的格式關乎材料是否會丟失,所以,模型的格式至關重要,最好使模型導出時保持fbx格式,這樣文件可直接用漫游軟件Unity3D打開,無需轉換格式,fbx文件導入漫游軟件中后,模型的紋理貼圖會自動生成資源文件夾,模型貼圖不會丟失。模型導入后的場景如圖5所示。

圖5 Unity3D全景圖
在漫游平臺Unity3D導入場景后,還需要添加人物漫游等功能才可以完成虛擬漫游系統的構建。
池神廟漫游系統的設計提供了第一人稱視角模式和第三人稱視角模式漫游功能。本文以第一人稱視角模式進行說明。
在Unity3D中,把第一人稱角色控制器拖拽到頁面中,打開游戲開關,游戲中可以通過點擊WSAD按鍵來控制視圖上下左右的移動,可以通過鼠標的移動來控制游戲視角的改變。用鼠標控制界面向右移動,效果如圖6所示。

圖6 向右移動后的畫面
在瀏覽風景時,如果有一個小地圖會更方便,就像游戲中右上角的小地圖,能夠顯示人物在二維地圖中的位置和方向。本文利用Unity3D制作小地圖,制作的步驟如下:
首先,在hierarchy窗口重新創建一臺攝像機,放置在場景的正上方;其次,在asseets窗口創建render texture,把創建好的render texture拖入camera中target texture選項中;再次,在hierarchy窗口選擇UI下的raw image作為背景圖。創建好后,把正方形白方塊拖到raw image的右上角;然后,把創建的render texture拖入raw image的texture中,從raw image中可以看到新建的攝像機中的圖像;最后,打開游戲按鈕,小地圖就能夠正常運行。
此外,為使觀看效果更加明顯,創建一個紅色球體,將小球拖入角色控制器中,小球會和人物會關聯起來,在小地圖中就可以用紅色的小球代表人物;另外,為使游戲播放中不出現紅色小球,僅小地圖中出現,需要改變小球的層級,首先在主攝像機的layer中添加新層minmap,在下面的culing mask中選擇minmap層,主攝像機將不會顯示minmap層中的圖像,然后將球體的層級layer選中minmap,效果如圖7所示。

圖7 添加紅球的小地圖
基于Unity3D建立的虛擬景點漫游系統在提高景點知名度、構建數字化旅游、增強文化實力方面起到了積極的作用。本文主要對虛擬現實技術在漫游系統中的應用做了分析,對本漫游系統中所使用的軟件和實現方法進行了詳細闡述,最終完成了對池神廟虛擬漫游系統的設計與實現。