曲蘊慧, 白新國
(1.西安醫(yī)學院, 計算機教研室, 陜西, 西安 710021;2.西安工程大學, 計算機科學與技術學院, 陜西, 西安 710048)
隨著互聯(lián)網(wǎng)的日新月異,虛擬現(xiàn)實(Virtual Reality,VR)技術給人們的生活帶來了極大的便利,人們也不再滿足于了解本土文化和歷史,而是將眼界拓寬到全國乃至世界,這樣展覽館的弊端就逐漸顯示出來了,展覽館的參觀者受地域限制極大,人們只能在固定的場所、固定的時間看到固定的展品,而將計算機三維建模技術結合到博物展示上可以打破傳統(tǒng)的二維平面展示,通過虛擬現(xiàn)實技術展示的物品變得更加生動,為人們打開看世界的眼睛[1-2]。
博物虛擬展示系統(tǒng)是一款面向所有人群的數(shù)字博物館,旨在解決傳統(tǒng)博物館面向人群受區(qū)域時空的限制、博物館需要維護費用以及人們無法快捷方便地觀賞所需要的展品的問題。全國各地的人們可以通過博物虛擬展示系統(tǒng)、打破地域的限制欣賞各地的文化、歷史,用戶可以更加方便地觀賞展品,打破空間的限制,在任意距離全方位地觀賞展品,打破時間的限制,足不出戶就可以輕松地觀賞自己想要了解的展品。博物展示系統(tǒng)的研究對于歷史文化的普及、公民素養(yǎng)的提高有重大的意義[3-4]。
博物展示系統(tǒng)通過虛擬現(xiàn)實的手段向用戶展示展品。用戶登錄進入系統(tǒng),有2種模式供用戶使用:一種是模擬真實博物館的 3D 場景漫游,用戶可以以第一人稱的視角,沉浸在虛擬的 3D 場景之中,通過場景漫游到自己想去的展臺,像現(xiàn)實生活中一樣去觀賞展品,體驗身臨其境的感覺[5];另一種是直接觀賞展品,用戶可以簡單便捷地選擇自己中意的展品,并對其進行360°任意旋轉、縮放、移動,達到自己滿意的觀賞效果。本文設計的博物展示系統(tǒng)總體架構如圖1所示。
(1)展廳漫游
展廳漫游模塊,用戶可以自由漫游,體驗置身于真實場景中的感覺。在該模式中, 用戶以第一人稱視角在展廳中漫游,所有展品或擺放在展臺上,或擺放在展架上,展品模擬真實光線產(chǎn)生合理的高光及陰影,用戶可以進行前進、后退、左平移、右平移以調(diào)整視角的操作,并且場景中擁有碰撞檢測,不會出現(xiàn)穿模(因為碰撞體積設定失誤導致相互穿透、疊加)的情況,展廳漫游功能設計如圖2所示。

圖1 總體架構

圖2 展廳漫游功能設計
(2)文物展示
文物展示功能模塊,用戶可以便捷地觀賞所選中的展品,便捷展臺擁有對展品的旋轉、縮放、移動以及查看展品介紹等功能,在對展品進行操作前,展品還擁有自動繞z軸(豎直方向的軸)旋轉的功能。在旋轉操作中,用戶可以對展品進行各個方向的自由旋轉,也就是組合X、Y、Z3個軸向的 360° 旋轉;在縮放操作中,用戶可以展品為中心進行自由縮放;在移動操作中,用戶可以把模型拖曳到屏幕前的任意位置。文物展示功能設計如圖3所示。

圖3 文物展示功能設計
博物展示系統(tǒng)中的建模包含場景和文物展品的建模,還有素材的制作及資源整合,建模部分需要經(jīng)過模型制作、UV 拆分、法線烘焙、材質(zhì)制作等步驟。建模流程如圖4所示。

圖4 建模流程
使用2.1所述的建模方法進行建模、貼圖后的文物效果如圖5所示。


(a) 編鐘
圖5(a)為古編鐘,圖5(b)為后母戊鼎,2個文物的左圖為建模后的效果,右圖為貼圖后的效果。由圖5可以看出,貼圖后的效果與原文物的樣子完全一致,包括觀眾在博物館中無法觀察到的細節(jié),在虛擬文物展示系統(tǒng)中,均可局部放大,詳細觀看研究。
在Unity3D中新建項目,在 Assets 下用來存放所有素材資源。在 Resources 下新建 Model、Pictures、Textures文件夾分別存放模型、圖片素材、貼圖。在 Pictures下新建 UI 界面、博物介紹、模型縮略圖3個文件夾分別存放 UI 素材、羊皮紙介紹、模型渲染圖。在Textures 下根據(jù)每個模型名稱新建每個文件夾,每個文件夾里面放每個模型對應的所有貼圖。資源整合完畢后,在 Unity 的 Project 里就會有對應的文件夾及資源[6]。
本系統(tǒng)將搭建系統(tǒng)主界面、用戶界面、展廳界面、文物展示界面、文字介紹界面等5個場景,新建 Scene,設置為 3D 模式,把展廳需要使用到的模型展品、展廳、展臺、長椅垃圾桶分別拖到場景中,分別為它們創(chuàng)建好材質(zhì)球,已有材質(zhì)球的展品可以直接使用,把材質(zhì)球賦給模型,縮放各個模型,將它們的大小匹配起來, 通過移動、旋轉擺放模型到合適的位置,刪掉默認相機,新建一個攝像機鏡頭下的內(nèi)容就是運行時展示在屏幕前的內(nèi)容。把它放在展廳的一端,鏡頭對準另一端,作為開始場景漫游時的初始位置。場景布置效果如圖6所示。


圖6 場景搭建
(1)場景跳轉功能
場景跳轉的腳本掛在每個按鈕之上,核心代碼如下:
public void ToXXX()//XXX 為場景名{SceneManager.LoadScene("XXX");}
(2)縮放功能
為了實現(xiàn)鼠標滾輪縮放模型,能夠得到細致入微的觀察效果,本文寫了一個控制攝像機縮放的腳本,核心代碼如下:
Camera.main.fieldOfView=Camera.main.fieldOfView
Input.GetAxis("Mouse ScrollWheel")
腳本直接掛在攝像機上,效果如圖7所示。

圖7 文物縮放
(3)旋轉功能
為了能實現(xiàn)用戶在觀賞時能夠旋轉模型,有2種方法:一種是旋轉模型本身;另一種是攝像機圍繞模型移動,把寫好的腳本掛在需要觀察的模型或者實時調(diào)整掛在攝像機上面配合使用就可以實現(xiàn)。效果如圖8所示。

圖8 文物旋轉
(4)自由漫游功能
打開展廳場景,新建一個腳本用來控制攝像機漫游以及攝像機旋轉視角,做好碰撞檢測,攝像機不會掉出展廳或沖出展廳。控制視角移動的核心代碼使用 WSAD 4個按鍵實現(xiàn)視角的前后左右移動,同時按住2個鍵可以實現(xiàn)斜向的移動,鼠標右鍵調(diào)整視角的方向,實現(xiàn)旋轉視角的功能。效果如圖9所示。


圖9 場景漫游
博物館承載了人類文明的歷史記憶和文物憑證,是歷史文物和標本的主要收藏機構、宣傳教育機構和科學研究機構, 是科學文化事業(yè)的重要組成部分。傳統(tǒng)的物品展示是把實物或實物制作成的模型通過某些規(guī)則或者方法來分類、排序,放置在不同的櫥窗陳列并加上介紹圖片、文字等來向顧客展示。這種方式雖說能生動、形象、直觀地向顧客展示產(chǎn)品,但是受眾的人受地域限制極大,且人們在參觀時的方便性也受影響,人們只能在固定的場所、固定的時間看到固定的展品,并且無法隨意觀賞[7]。基于3DMax和Unity3D的博物虛擬展示系統(tǒng)運用虛擬現(xiàn)實技術,構建一種模擬環(huán)境,它是一種多源信息融合的、交互式的三維動態(tài)視景,是一款面向所有人群的數(shù)字博物館,用戶可以更加方便地觀賞展品,打破空間的限制,在任意距離全方位地觀賞展品,打破時間的限制,足不出戶就可以輕松地觀賞自己想要了解的展品。
本系統(tǒng)開發(fā)過程中由于對歷史文物模型整體把控不夠精確,模型還可以更精細,今后還可以借助三維重建技術更高效地重建文物原型,利用多種尋路算法實踐博物館智能漫游,充分運用知識圖譜進一步完善博物館的智能導航。