文丨張 凱
隨著信息技術的發展及其應用的不斷深入,數字化信息管理和實物虛擬化已經在當前的信息技術應用領域里占據了相當重要地位。虛擬現實是在現實客觀世界的基礎上,利用先進的信息化工具,構建一個可以模擬現實世界的虛擬空間,在此基礎上甚至可以進一步拓展現實世界的時空維度,從而擴展現實世界的功能,最終建立一個優于現實世界的計算機世界虛擬空間。
虛擬校園正是采用虛擬現實技術構建而成的,其目的是將學校風光和地圖進行有機結合起來,可以使來訪者足不出戶便可瀏覽校園風光,為學校樹立良好的對外形象,也可以作為校園建設的輔助規劃工具,供校園內外的師生和熱心人士出謀劃策。常州輕工職業技術學院虛擬校園漫游導航系統是通過建立校區建筑的三維模型,結合虛擬現實技術建立一個校園虛擬系統。
VRML是Virtual Reality Modeling Language的縮寫,即虛擬現實建模語言,它是虛擬現實和WWW結合的產物,是一種可以用來創建現實世界的場景模型或者虛構世界的三維場景建模。VRML是一種跨平臺的語言,可以發布用來3D網頁,用戶可以在瀏覽的時候可以參與和探索,在交互性、動態效果、延續性等方面感受到比瀏覽普通網頁更自然的體驗方式。
VRML與JavaScript的結合主要體現在VRML的Script腳本節點上。由于VRML本身不具備與外部交互的功能,無法完成分支、循環、轉折等程序設計的基本特征,所以必須和其他語言結合才能構造出具備交互功能的三維場景。因此在語言中定義了Script節點,在該節點中,可以使用JavaScript代碼,從而實現普通程序的轉折、循環等功能,擴展VRML語言的功能。本漫游導航系統中主要節點有Shape、Group、Script、Transform、Appearance、Background、Anchor、View Point、LOD、Inline等。
漫游系統是一個具有逼真的視覺、聽覺、觸覺的特定的虛擬環境。這是一個真實空間或假想空間的實時仿真空間,用戶通過必要的交互設備實現以自然的方式在虛擬空間中觀察,漫游,產生身臨其境的感覺。漫游系統的關鍵技術包含建筑場景的建模、繪制、優化及碰撞檢測等方面。
運用三維建模技術在計算機中創建一個逼真的現實校園場景的虛擬世界是構建虛擬校園的主要工作之一。心理學家研究表明:人們通過視覺系統獲得的外界信息約占全部信息的83%,我們構建的虛擬校園的逼真程度決定了其沉浸感,因此虛擬校園模型的構建在整個虛擬校園系統中的地位非常重要。選擇合適的建模工具和三維模型渲染技術將有助于提高虛擬現實場景中模型的逼真程度。
1.1 環境模型的建立
天空與地面的建模較為簡單,主要是用VRML自帶的Background節點來實現。虛擬場景中的綠化通過VRML中自帶的Billboard節點來實現。以樹木為例,我們采用三個同樣大小并且相互成60度的平面作為植物的建模基礎。先對植物進行拍攝,然后利用Photoshop處理成背景透明的貼圖,貼到三個平面上,從除正上方的俯視之外的任何角度來看都有較好的視覺效果。模型的復雜度并沒有明顯增加,只是由一個平面變成兩到三個平面,紋理貼圖依然是一個。對于草的處理采用了與樹類似的辦法。路燈、長椅等的模型建立十分簡單,但是要注意的是盡量減小文件大小,因為在整個場景中路燈不止一個,椅子也有很多,如果模型過于精密則會影響最終的整體文件大小。
1.2 建筑模型的建立
虛擬校園的建筑模型通常分為標志性建筑和普通建筑兩類。本系統采用的方法是對標志性的建筑進行精確建模(即我們平時所說的高模),而對于普通建筑進行粗略建模(即我們平時所說的低模)。高模建模方式如下:
(1)簡化工程圖紙:將建筑圖紙在Auto CAD中進行簡化,刪減不必要的細節,去掉輔助線以及內部結構。(2)將圖紙倒入3D MAX進行粗略建模:主要是根據圖紙建出建筑的大體輪廓,其間用到的方法大致有布爾運算、擠壓、放樣等。(3)細化模型:該步驟主要是將模型進行細致處理,在保持文件大小前提下光滑表面,調整部分節點,加入建筑細節,使其更加接近真實。(4)簡化處理:該步驟主要是刪減最終模型中不必要的部分降低模型的精度,使最終文件盡量小。(5)繪制貼圖并應用到場景之中:貼圖的繪制主要是通過到實地拍攝建筑外形,然后在PhotoShop之中進行處理,形成最終貼圖,對于部分簡單貼圖也可以直接制作而不采用真實圖片。(6)導出生成VRML文件。

圖1 局部俯視圖
低精度模型建造過程與高精度類似,只是建模過程中對細節部分的處理較為簡單,較細微的地方不予考慮,大面積的運用貼圖解決細節問題。
本系統使用VRML語言中自帶的Inline節點來完成模型整合工作。該節點的功能是導入url所指向的其他VRML文件,再結合上Transform節點就可以控制導入物體的坐標了。通過這兩個節點將上述建立的各個造型文件單獨生成一個VRML文件,然后再在一個大場景中導入,最終實現整合整個虛擬空間的目的。圖1為模型整合后的局部俯視圖。
漫游方式主要分為自動漫游和交互式漫游兩種。
自動漫游是漫游過程中按設計者事先規劃好的路徑與視角來執行虛擬環境的漫游,通常都是能最好體現虛擬景觀特色的方式,實現相對比較簡單,漫游路徑由給定坐標決定。本文采用的是通過創建攝像機視圖的方式來實現自動漫游。在3D max中可以很方便地對攝像機進行鏡頭的推拉搖移等調整,直到取得滿意的空間視點,真正實現在C視圖下的所見即所得。
交互式漫游是用戶自主操控,用鼠標或鍵盤實時地區控制漫游方向和視點的一種漫游方式。其實現則是通過對VRML中的Navigation Info節點和Viewpoint節點進行控制來完成的。Navigation Info 節點可以分別對瀏覽速度和方式、頂燈以及化身的大小進行設置。Viewpoint節點是預先定義瀏覽空間的觀察位置和空間朝向,瀏覽者可以通過該位置和朝向來觀察到虛擬世界中相應的場景。
導航功能是指在虛擬校園中,為了便于用戶瀏覽,會在各個路口放上指示牌,瀏覽者可以通過選擇指示牌上的觸點經過攝像機的自動引導找到相應的建筑或地方。該功能的實現主要是通過時間傳感器節點(Time Sensor)、觸摸傳感器節點(Touch Sensor)和位置差補器節點(Position Interpolator)對Viewpoint節點的位置和方向進行控制而實現。
為了避免“穿墻而過”等有違常理的現象發生,需要在漫游過程中進行碰撞檢測。交互式漫游過程中,系統默認的漫游方式是Walk,替身被固定在地面上,即與地面的高度始終一致。包圍盒可以理解成攝像機的包圍盒與其正上方向下的地面投影所構成的空間,以攝像機的包圍盒為Box為例,替身包圍盒示意圖如圖2所示。由此,檢測的基本思路為:判斷替身位處哪一個子空間,若該子空間無建筑物,則忽略碰撞檢測,若存在建筑物,則判斷建筑物所處位置最低點是否高于替身,若高于替身則不會發生碰撞,若低于替身,則可能發生碰撞。另外對于一些復雜節點,可以使用碰撞代理,利用簡單的集合體,如常見的Box、Sphere作為碰撞檢測的邊界,提高處理速度。

圖2 替身包圍盒示意圖
環境控制主要是指虛擬場景中的光照和晴霧的控制。為了增加虛擬場景的真實感在虛擬環境中加入白天與黑夜的區別,晴天與霧天的區別,該功能的實現主要是通過時間傳感器節點(Time Sensor)和位置差補器節點(Position Interpolator)等控制霧節點(Fog)和光照節點(Point Light、Directional Light)的參數實現的。
在漫游系統中,通常會使用漫游導航圖作為向導工具。相對于三維場景視圖,采用二維地圖導航可以給用戶提供更加廣闊的視野。這里我們主要運用Proximity Sensor(接近度傳感器)節點來獲得坐標值。通過Proximity-Sensor節點跟蹤鼠標的軌跡,定位鼠標當前位置,獲得相應坐標值并將三維坐標轉換成二維坐標,再把用戶當前所在位置的坐標和方向傳遞給標志性物體,最后在平面圖上用高亮的標志顯示出來。
虛擬現實技術是支撐多維信息空間的關鍵技術之一,建立具有多維度信息空間的和諧人機環境是未來信息技術的目標。在城市規劃、景觀設計、生產裝配、方案展示等領域上,虛擬現實技術的應用將為之帶來革命性發展。
常州輕院虛擬校園漫游導航系統的功能相對簡單,提供用戶在虛擬三維場景中的漫游,使用戶能直觀地了解校園概況,達到對校園的宣傳作用,還不能滿足遠程教育中用戶間的互動。系統強調了視點的三維幾何建模,對運動建模和對象行為建模不足。在三維虛擬校園漫游系統的基礎上,拓展新的功能和應用是需要改善的地方。