談幾何建模技術(shù)在虛擬校園漫游系統(tǒng)開發(fā)中的應(yīng)用
虛擬漫游系統(tǒng)的開發(fā)是虛擬現(xiàn)實(shí)技術(shù)的一個(gè)重要應(yīng)用。以華北電力大學(xué)保定二校區(qū)為虛擬仿真環(huán)境 ,使用 3DMAX建模工具對(duì)校 園中的各種模型進(jìn)行建模,使用多種基于幾何建模的場(chǎng)景優(yōu)化措施,并基于GoogleEaCh衛(wèi)星截圖進(jìn)行場(chǎng)景的精確布局設(shè)計(jì)。結(jié)合 Virtools虛擬現(xiàn)實(shí)開發(fā)平臺(tái),設(shè)計(jì) 了虛擬校園漫游系統(tǒng)的開發(fā)流程,并在微機(jī)平臺(tái)上實(shí)現(xiàn)了一個(gè)場(chǎng)景復(fù)雜的校 園實(shí)時(shí)漫游系統(tǒng)。該校 園漫游系統(tǒng)不但為用戶提供了友好的Web界 面,而且設(shè)計(jì)并實(shí)現(xiàn)了基于導(dǎo)航圖控制的人機(jī)交互機(jī)制,便于綜合使用多種漫游方式快速漫游校 園的場(chǎng)景。
虛擬校園漫游系統(tǒng)作為校園數(shù)字化工程的一部分,是指利用高性能計(jì)算機(jī)軟硬件去創(chuàng)建具有良好交互能力、能使參與者具有沉浸感、有助于啟發(fā)參與者構(gòu)思的信息環(huán)境。借助這樣一個(gè)基于真實(shí)空間或假象空間的實(shí)時(shí)仿真虛擬空間,不僅可以全面展示校園建筑物的外觀、周邊環(huán)境,還可以以任意視角觀察建筑物的內(nèi)部布局結(jié)構(gòu)和內(nèi)部設(shè)施,使參觀者足不出戶就可以進(jìn)入虛擬的校園,盡情領(lǐng)略校園的美好風(fēng)光。虛擬現(xiàn)實(shí)技術(shù)則是在計(jì)算機(jī)圖形學(xué)、仿真、人一機(jī)接口、多媒體以及傳感技術(shù)的基礎(chǔ)上發(fā)展起來的一門交叉學(xué)科。用戶以6個(gè)自由度在這個(gè)仿真的環(huán)境里進(jìn)行對(duì)話,以自然的方式進(jìn)行交互操作。利用計(jì)算機(jī)生成的模擬環(huán)境,通過傳感設(shè)備和計(jì)算機(jī)接口,給用戶親臨其境的感受。高逼真虛擬環(huán)境的建立是虛擬現(xiàn)實(shí)技術(shù)的核心內(nèi)容,除了滿足沉浸感,還必須滿足交互性或?qū)崟r(shí)性。虛擬校園漫游系統(tǒng)作為虛擬現(xiàn)實(shí)技術(shù)在特定領(lǐng)域的發(fā)展 和應(yīng) 用,也 是是虛擬現(xiàn)實(shí)技術(shù) 的綜 合應(yīng) 用,其研 究成果 同樣可用于公共建 筑項(xiàng)目(如車 站、機(jī)場(chǎng)、橋梁 、港 口、大壩、核電站等大型工程)、城市規(guī)劃設(shè)計(jì)方案、城市交通布局設(shè)計(jì)方案、建筑物室內(nèi)設(shè)計(jì)、布置和裝飾效果的先期演示、驗(yàn)證。目前已有的虛擬漫游系統(tǒng)根據(jù)其處理基元的類型可以分為 3種:基于多邊形的實(shí)時(shí)漫游系統(tǒng),基于圖像的實(shí)時(shí)漫游系統(tǒng)以及混合類型的實(shí)時(shí)漫游系統(tǒng)。
基于圖像的實(shí)時(shí)漫游系統(tǒng)無需使用幾何模型的多邊形描述場(chǎng)景,而只需場(chǎng)景對(duì)象的數(shù)字圖像。這種方法雖然具有建模時(shí)間短,繪制效果逼真的優(yōu)點(diǎn),但是存在圖像匹配困難,存儲(chǔ)數(shù)據(jù)量大,立體感不強(qiáng)的缺點(diǎn)。對(duì)于碰撞檢測(cè)等交互式行為仿真,用這類 算法處理 極為困難 。基于全景圖技術(shù) 的漫游系統(tǒng)就屬于這一類,而目前國(guó)內(nèi)一些大學(xué)開發(fā)的校園漫游系統(tǒng)一般采用這種全景圖技術(shù),可以實(shí)現(xiàn)對(duì)場(chǎng)景的固定視點(diǎn)的任意視角的漫游 ,但從一 個(gè)視點(diǎn)到另一個(gè) 視點(diǎn)的移動(dòng)會(huì)產(chǎn)生跳躍,且交互性差,QuickTime是這類漫游系統(tǒng)的代表。
基于多邊形的實(shí)時(shí)漫游系統(tǒng)也稱為基于幾何渲染的漫游系統(tǒng)。這類漫游系統(tǒng)一般具有很好的交互性,既可以在導(dǎo)航器的指導(dǎo)下漫游,也可以根據(jù)用戶的意愿自由漫游。但是一個(gè)高逼真的基于多邊形的虛擬校園漫游場(chǎng)景通常包含上千萬甚至更多的多邊形,大規(guī)模虛擬校園場(chǎng)景復(fù)雜度的增加勢(shì)必影響場(chǎng)景繪制的實(shí) 時(shí)性 。
混合漫游系統(tǒng)既使用圖像也使用多邊形來參與繪制,試圖融合前兩者的優(yōu)點(diǎn),但是目前該技術(shù)不是很成熟,基于圖像的漫游系統(tǒng)固有的缺陷仍然存在。因此,本系統(tǒng)選擇采用基于多邊形建模的方法構(gòu)建虛擬校園漫游系統(tǒng)。
1 基于多邊形的虛擬漫游關(guān)鍵技術(shù)
目前從技術(shù)角度來說,建筑物虛擬漫游的最大難點(diǎn)在于建模和實(shí)時(shí)繪制。雖然隨著計(jì)算機(jī)技術(shù)的發(fā)展,個(gè)人計(jì)算機(jī)的處理能力有了極大提升,甚至已經(jīng)超過了以往專業(yè)圖形工作站的水平。尤其是CPU和 GPU(graphics processing units)的迅猛發(fā)展,使得在微機(jī)上開發(fā)虛擬漫游系統(tǒng)具備了一定的物質(zhì)基礎(chǔ),但是由于室外建筑漫游所看到的景象距人們很近,因此需要繪制得非常逼真并且建模時(shí)需要構(gòu)造得非常精細(xì),這往往消耗計(jì)算機(jī)大量的時(shí)間和空間資源。同樣,對(duì)于構(gòu)造出來的如此復(fù)雜的模型,在對(duì)其進(jìn)行繪制時(shí),由于GPU性能的制約也往往很難達(dá)到實(shí)時(shí)效果。因此,圍繞解決大規(guī)模室內(nèi)外漫游場(chǎng)景繪制的質(zhì)量與實(shí)時(shí)性的矛盾也就必然成為開發(fā)虛擬漫游系統(tǒng)要解決的關(guān)鍵問題。本系統(tǒng)主要實(shí)現(xiàn)一個(gè)基于多邊形的校園室外漫游,需要考慮使用的關(guān)鍵技術(shù)主要包括:可見性裁減技術(shù),LOD(1evel ofdetail)技術(shù)。
1.1 可見性裁減技術(shù)
可見性裁減處理從某個(gè)視點(diǎn)來說場(chǎng)景中可見部分的確定問題,即只將潛在的可見部分送入繪制管道,從而提高場(chǎng)景實(shí)時(shí)繪制的性能。如圖 1所示,根據(jù)場(chǎng)景中不可見面片的種類,可以將可見性裁減分為視見體裁減和遮擋剔除。視見體裁減主要裁減位于視見體外部的多邊形,簡(jiǎn)單場(chǎng)景的視見體裁減可以基于 OpenGL等圖形繪制軟件包在基本圖元一級(jí)進(jìn)行裁減,而對(duì)復(fù)雜場(chǎng)景的視見體裁減一般根據(jù)預(yù)處理階段構(gòu)造的層次數(shù)據(jù)結(jié)構(gòu)對(duì)場(chǎng)景空間數(shù)據(jù)進(jìn)行合理組織,可以在場(chǎng)景對(duì)象一級(jí)進(jìn)行裁減,因此使用 CPU進(jìn)行視見體裁減的時(shí)間開銷更低。遮擋剔除是對(duì)于當(dāng)前視點(diǎn)剔除掉位于視見體內(nèi)且被其前面的遮 擋物(Occluder)遮擋住的對(duì)象。另外,可以將裁減那些背向視點(diǎn)的多邊形的背面裁減理解為一種最簡(jiǎn)單的遮擋剔除。綜合國(guó)內(nèi)外在這方面的研究情況,可見性裁減算法主要分為預(yù)處理與實(shí)時(shí)處理,保守型與近似型,點(diǎn)與區(qū)域型,圖像空間與物體空間,還有單獨(dú)遮擋物與遮擋物融合5種類型 。
1.2 LOD技術(shù)
LOD繪制技術(shù)是指對(duì)網(wǎng)格面片表示的模型,在一定誤差的精度范圍內(nèi),根據(jù)視點(diǎn)與物體的距離或物體的重要性等因素決定刪除點(diǎn)、邊、面,從而簡(jiǎn)化所繪制場(chǎng)景的復(fù)雜度,加快圖形的繪制速度。因此這里采用LOD 技術(shù)充分利用了人眼的視覺特性,在模型的精細(xì)程度與繪制的速度方面取一個(gè)折衷,既要保證一定的繪制質(zhì)量,以滿足良好的視覺效果,又不造成用戶漫游的不適感。地形這一特殊的復(fù)雜模型一般采用多分辨率建模技術(shù)繪制。所謂多分辯繪制算法可以認(rèn)為是LOD技術(shù)的延伸,即算法實(shí)時(shí)地根據(jù)視點(diǎn)的變化而簡(jiǎn)化地形繪制的一種方法。由于校園地形較為平坦,地貌特征并不復(fù)雜?;谝陨锨闆r,如圖2所示,本系統(tǒng)參照衛(wèi)星地圖構(gòu)建了華北電力大學(xué)保定二校區(qū)地形的平面模型,用它來替代地形模型。
2 虛擬漫游系統(tǒng)流程設(shè)計(jì)與開發(fā)
在虛擬校園漫游系統(tǒng)開發(fā)過程中,對(duì)現(xiàn)有的建筑及其它場(chǎng)景采用實(shí)地拍攝,實(shí)地觀察,使用幾何建模的方法來進(jìn)行場(chǎng)景搭建。工作流程如圖3所示。
2.1 Virtools開發(fā)工具
本系統(tǒng)構(gòu)建使用的V~tools是一套集創(chuàng)作應(yīng)用程序、交互引擎和渲染引擎和發(fā)布模塊于一身的3D虛擬現(xiàn)實(shí)開發(fā)系統(tǒng)。該系統(tǒng)除了提供給用戶方便易用的拖拉模塊式構(gòu)建方法,還為程序員提供了編程SDK、腳本編程語言以及對(duì)圖形編程語言ceTx的支持,以便于程序員開發(fā)更適合實(shí)際需求的高效解決方案 。
2.2 三維虛擬場(chǎng)景數(shù)據(jù)庫的構(gòu)建與優(yōu)化
逼真的三維場(chǎng)景模型是構(gòu)建高逼真虛擬漫游系統(tǒng)的關(guān)鍵,本系統(tǒng)的場(chǎng)景構(gòu)造主要按照實(shí)地考察結(jié)果進(jìn)行。建模同時(shí)還要實(shí)現(xiàn)場(chǎng)景細(xì)節(jié)表現(xiàn)與圖形負(fù)荷之間的高效平衡。為了使構(gòu)造的漫游系統(tǒng)達(dá)到實(shí)時(shí)繪制要求,系統(tǒng)采用了場(chǎng)景數(shù)據(jù)庫的層次組織結(jié)構(gòu)、紋理映射、實(shí)例化、LOD層次細(xì)節(jié)模型、可見性裁剪等技術(shù)方法對(duì)場(chǎng)景進(jìn)行優(yōu)化。
實(shí)體建筑是虛擬場(chǎng)景中的主體部分,也是最重要的場(chǎng)景內(nèi)容。對(duì)實(shí)體建筑進(jìn)行建模與優(yōu)化的一般步驟是:
(1)獲得建模數(shù)據(jù)。建筑外觀與幾何形狀等要求準(zhǔn)確的數(shù)據(jù),在沒有建筑圖紙的情況下主要根據(jù)實(shí)地拍攝的照片使用3DS MAX進(jìn)行 建模。
(2)確定模型的層次結(jié)構(gòu),由于系統(tǒng)使用的建模工具不具備像Multigen建模工具的樹狀層次結(jié)構(gòu)來管理場(chǎng)景模型”,所以在模型建好后,通過導(dǎo)入到 Virtools中進(jìn)行層次設(shè)置。如先按主體分組,再在每個(gè)主體中分墻體、門、窗等。直到底層分解到基本圖元結(jié)構(gòu)。
(3)去除冗余多邊形。描述實(shí)體模型表面的數(shù)據(jù)經(jīng)常存在冗余現(xiàn)象,這里的冗余多邊形主要是指在實(shí)體外部觀察模型時(shí)不可見的部分。例如,樓體的底面、內(nèi)墻面及樓層之間的連接面等。由于場(chǎng)景瀏覽時(shí)它們處于不可見的位置,去除它們并不影響實(shí)體的視覺效果,而消除這些冗余多邊形則可以在很大程度上降低場(chǎng)景的復(fù)雜度。這里只考了建模時(shí)模型的可見性裁剪,對(duì)校園進(jìn)行實(shí)時(shí)漫游時(shí)需根據(jù)Virtools的SDK實(shí)現(xiàn)非基本 圖元層次的視見體裁減和 遮擋剔除 ,這樣可充分利用GPU的性能實(shí)時(shí)繪制復(fù)雜校園的室外場(chǎng)景。
(4)使用紋理映射。對(duì)于門、窗、欄桿等每棟建筑都具有且數(shù)量較大的細(xì)節(jié)部分,一般采取紋理映射的方法,在對(duì)應(yīng)位置的多邊形表面上“貼制”紋理圖片,用來代替詳細(xì)的模型。這樣處理可以減少模型的多邊形數(shù)目和復(fù)雜程度,提高圖像繪制速度和顯示速度。只要視點(diǎn)不過于靠近建筑物,紋理映射并不會(huì)降低場(chǎng)景的逼真度。
(5)使用 LOD技術(shù)對(duì)幾何模型和場(chǎng)景進(jìn)行簡(jiǎn)化。校園漫游系統(tǒng) 中對(duì) LOD的定義是利 用 3DSMax和 Virtools來完成 的 。使用3DSMax~作不同精度的模型,在Xrmools中設(shè)置調(diào)用范圍。采用LOD模型后,可以實(shí)現(xiàn)只在漫游視點(diǎn)接近場(chǎng)景對(duì)象時(shí),載入精細(xì)模型,其他情形下則可以用低分辨率模型進(jìn)行替換。
此外,外部景觀在漫游場(chǎng)景中也是不可缺少的重要部分,美觀、適當(dāng)?shù)耐獠烤坝^能極大的增強(qiáng)場(chǎng)景的真實(shí)感和逼真度。在本系統(tǒng)的虛擬校園巾,外部景觀主要包括:草地、樹木、花叢、路燈、涼亭、雕塑、花壇等。為了營(yíng)造校園場(chǎng)景的真實(shí)氛圍,在場(chǎng)景構(gòu)建后期還增加了人群與汽車等實(shí)體。
天空及遠(yuǎn)景模型的構(gòu)建也是場(chǎng)景中的重要內(nèi)容。具體做法是在校 區(qū)地 形的邊緣構(gòu)造 一個(gè)四周閉合 、由若干四邊形面組成的“圍墻”,通過在“圍墻”面上映射相應(yīng)的紋理,來實(shí)現(xiàn)該方向上遠(yuǎn)景的模擬。而對(duì)天空的模擬,如圖4所示,采用加蓋_個(gè)半球籠罩整個(gè)地形,在其內(nèi)表面上映射相應(yīng)的天氣效果紋理來實(shí)現(xiàn)。這樣,當(dāng)視點(diǎn)在由地形、邊界立面、項(xiàng)面組成的內(nèi)空間中移動(dòng)時(shí),加上適當(dāng)?shù)墓庹招Ч梢允谷烁械竭h(yuǎn)景、天空所產(chǎn)生的強(qiáng)烈的縱深感。為了加強(qiáng)動(dòng)態(tài)效果,還可以采用紋理變換的方法來實(shí)現(xiàn)動(dòng)態(tài)移動(dòng)的天空云彩。
場(chǎng)景實(shí)體模型的構(gòu)建是按照?qǐng)鼍皩哟谓Y(jié)構(gòu)的劃分來進(jìn)行的,各層次實(shí)體景觀構(gòu)建完后需要進(jìn)行組合集成,最終形成虛擬場(chǎng)景的整體。本系統(tǒng)構(gòu)建的虛擬校園的場(chǎng)景模型先按照小區(qū)域分別集成,然后將各小區(qū)域場(chǎng)景集成到地形模型上,可參照?qǐng)D2所示校園平面圖進(jìn)行位置的布局 。
2.3 場(chǎng)景地形的分塊調(diào)度管理
本系統(tǒng)構(gòu)建的校園場(chǎng)景較大,這里采用分塊調(diào)度管理技術(shù) 。先將整個(gè)地形分割成若干多邊 形數(shù)較少的小單元地形并存成不同的地形模型文件,再以外部引用的方式分別調(diào)用(包括地形上的地物),重新構(gòu)成一個(gè)完成的地形模型。這樣可以根據(jù)視點(diǎn)所看到的區(qū)域,動(dòng)態(tài)地選擇小單元地形模型進(jìn)行調(diào)用,不需要調(diào)用整個(gè)地形模型,能有效地提高系統(tǒng)的吞吐量和場(chǎng)景繪制的實(shí)時(shí)性。
3 虛擬校園漫游功能的設(shè)計(jì)與實(shí)現(xiàn)
如圖5所示,本系統(tǒng)包括漫游模塊、3D地圖模塊及衛(wèi)星地圖模式。其中三維漫游主要包括固定路徑漫游、自由導(dǎo)航漫游 、定點(diǎn)漫游、場(chǎng)景導(dǎo)入和編輯等主要功能。 3D地圖模式和衛(wèi)星地圖模式則提供用戶 以地圖拖拉導(dǎo)航的方式形象直觀地進(jìn)行校園漫游。
3.1 虛擬漫游人機(jī)交互控 制
人機(jī)交互一直都是虛擬現(xiàn)實(shí)系統(tǒng)研究中的重要內(nèi)容。漫游系統(tǒng)中的實(shí)時(shí)交互性主要表現(xiàn)在兩個(gè)方面:一是用戶對(duì)場(chǎng)景中的實(shí)體對(duì)象能進(jìn)行某些操作,并且實(shí)體對(duì)象能:征即以某種形式的變化反饋給用戶,響應(yīng)用戶的操作 ;二是當(dāng)用戶的位置與視點(diǎn)改變時(shí),漫游引擎要能夠立即調(diào)度場(chǎng)景數(shù)據(jù)庫實(shí)時(shí)生成新的視點(diǎn)畫面,并顯示給用 戶 。
人的行走是日常生活中最普遍的行為,而在漫游系統(tǒng)中它也是最主要的行為。用來控制虛擬環(huán)境中視點(diǎn)位置的改變就是漫游系統(tǒng)中的主要交互方式。對(duì)視點(diǎn)控制交互方式的設(shè)計(jì),主要考慮到方便性問題,即如何提供給用戶一種 自然方便 的觀察環(huán)境的方式。視點(diǎn)控制要能夠模擬行人在虛擬環(huán)境中觀察場(chǎng)景,在必要時(shí)還能以定點(diǎn)方位的方式瀏覽場(chǎng)景。在本系統(tǒng)中視點(diǎn)用虛擬相機(jī)來表示,所以對(duì)視點(diǎn)的控制實(shí)質(zhì)足對(duì)相機(jī)進(jìn)行設(shè)置與控制。通過對(duì)相機(jī)采用不同的控制方式可以實(shí)現(xiàn)不同的漫游方式。在校區(qū)漫游系統(tǒng)中,對(duì)相機(jī)使用以下控制方式:
(1)相機(jī)的靜態(tài)控制。相機(jī)本身具有位置和旋轉(zhuǎn)角度屬性。當(dāng)進(jìn)入漫游系統(tǒng)時(shí),根據(jù)需要義初始設(shè)置的默認(rèn)視點(diǎn)繪制場(chǎng)景,用戶可通過預(yù)設(shè)的視點(diǎn)切換校園場(chǎng)景。
(2)相機(jī)按固定路徑進(jìn)行漫游。按下響應(yīng)控制鍵,將按照設(shè)定好的路徑 對(duì)整個(gè)校園進(jìn)行瀏覽。如圖 6所示為自由導(dǎo)航模式下的校園全景。
(3)自由漫游。以第一人稱視角 進(jìn)行漫游 。
(4)定點(diǎn)漫游。點(diǎn)擊相應(yīng)建筑物名稱即傳送到對(duì)應(yīng)建筑物。
3.2 導(dǎo)航圖控制
如圖6左上角所示的導(dǎo)航圖是漫游系統(tǒng)中普遍使用的向?qū)Чぞ?,一般使用二維地圖表示。與三維場(chǎng)景的視圖相比,二維地圖的優(yōu)勢(shì)在于它可以提供更加廣闊的視野空間,使漫游者很容易從總體上把握當(dāng)前所處的位置及周邊環(huán)境狀況。系統(tǒng)采用首先將三維場(chǎng)景渲染成一張二維平面地圖,然后利用虛擬相機(jī)實(shí)現(xiàn)地圖的顯示、縮放以及二維與三維視點(diǎn)的同步運(yùn)動(dòng)。
4 結(jié)束語
本文在研究基于多邊形的虛擬漫游實(shí)時(shí)優(yōu)化等關(guān)鍵技術(shù)的基礎(chǔ)上,以華北電力大學(xué)保定二校區(qū)為仿真實(shí)例,使用3DSMAX、Virtools中BuildingBlock及SDK工具設(shè)計(jì)并實(shí)現(xiàn)了~個(gè)具有基本漫游功能及簡(jiǎn)單場(chǎng)景設(shè)置的實(shí)時(shí)虛擬校園漫游系統(tǒng)。針對(duì)本系統(tǒng)實(shí)時(shí)性及逼真性進(jìn)一步改進(jìn)的考慮,今后的工作包括:地形匹配問題;基于遮擋裁剪技 術(shù)的高效場(chǎng)景優(yōu)化問題;基于網(wǎng)絡(luò)漫游的實(shí)時(shí)性問題。另外,系統(tǒng)功能的進(jìn)一步完善也是今后的工作。通過功能完 善使之還具備實(shí) 時(shí)通訊、個(gè)人信息管理、信息交流、官方信息發(fā)布等功能,甚至能為網(wǎng)絡(luò)教學(xué)提供三維虛擬平臺(tái)。
評(píng)論
查看更多