基于虛擬現實(shí)技術(shù)的虛擬校園漫游系統優(yōu)化算法研究
虛擬現實(shí) (virtual reality,VR)是一種可以創(chuàng )建和體驗虛擬世界的計算機系統,是指利用高性能的計算機生成逼真的視、聽(tīng)、觸、嗅覺(jué)等一體化的虛擬環(huán)境,用戶(hù)借助必要的專(zhuān)用設備(如數據手套、頭盔)以 自然的方式與虛擬環(huán)境中的虛擬對象進(jìn)行實(shí)時(shí)交互,相互作用,相互影響,從而產(chǎn)生身臨其境的感覺(jué).
本文引用地址:http://dyxdggzs.com/article/161227.htm近年來(lái),隨著(zhù)計算機硬件技術(shù)的加速發(fā)展,虛擬現實(shí)技術(shù)在建筑環(huán)境實(shí)時(shí)漫游中的應用成為人們關(guān)注的熱點(diǎn).虛擬校園漫游是城市規劃應用的基本功能之一,構造一個(gè)虛擬校園漫游系統,必須綜合應用計算機圖形技術(shù)、多媒體技術(shù)、傳感器技術(shù)、顯示技術(shù)以及網(wǎng)絡(luò )技術(shù)等多種計算機領(lǐng)域的最新技術(shù).文中根據第 2炮兵士官學(xué)校規劃設計,應用虛擬現實(shí)技術(shù)開(kāi)發(fā)了基于桌面系統的“虛擬校園實(shí)時(shí)漫游系統”,該系統以中檔 Pc機為硬件平臺,對實(shí)時(shí)漫游系統的各種優(yōu)化算法進(jìn)行了深入研究。
1 系統總體結構
為了保證整個(gè)場(chǎng)景能順利、流暢地在普通高檔微機上運行,同時(shí)達到實(shí)時(shí)漫游的功能,保證其安全、可靠地運行,按照任務(wù)側重點(diǎn)的不同,可將整個(gè)系統分解成場(chǎng)景模型子系統、漫游引擎子系統、輸入子系統 、渲染輸 出子系統等,它們在功能上相對獨立,通過(guò)數據接口相互聯(lián)系,其總體結構如圖 1所示.
2 模型及貼圖的優(yōu)化
2.1 三維復雜模型結構的優(yōu)化
虛擬校園中有許多復雜結構模型,如果模型數據庫中多邊形數 目超過(guò)系統的計算能力,在虛擬場(chǎng)景中漫游時(shí)幀處理將無(wú)法及時(shí)完成,場(chǎng)景變換的平滑性會(huì )受到破壞 .為了提高運行系統的實(shí)時(shí)性,必須對模型進(jìn)行簡(jiǎn)化處理,以減少數據庫的多邊形開(kāi)銷(xiāo),從下面幾個(gè)方面對模型進(jìn)行簡(jiǎn)化:
1)使用 LOD表達復雜結構模型.虛擬校園中有許多復雜模型必須用 LOD來(lái)表達,以使運行系統中的多邊形數控制在預算之內,有利于提高運行系統的實(shí)時(shí)性.
2)用紋理代替多邊形表達結構細節.紋理映射能夠在不增加多邊形數目的前提下提高場(chǎng)景表達的詳實(shí)程度,用 LOD模型配合一定細節程度的紋理來(lái)代替多邊形模型會(huì )大大降低系統的繪制負載.
3)刪除冗余多邊形.刪除數據庫中的冗余多邊形可以在一定程度上減少系統中的多邊形數量,這些多邊形可能是模型內部的細節結構,某些多邊形的背面可能是位于某平面上的模型的底面,如地面上內部不需漫游的房屋的底面等.可以用 3DSMAX中的 Optimize修飾器進(jìn)行簡(jiǎn)化 ,主要用于減少模型的面數.值得注意的是,Optimize必須在貼圖之前進(jìn)行,否則貼圖會(huì )發(fā)生扭曲.
4)移除多邊形的背面.虛擬校園環(huán)境中組成絕大多數模型的多邊形都是單面可見(jiàn),3DSMAX能 自動(dòng)剔除多邊形的背面,僅顯示其前面,虛擬校園環(huán)境中除構成樹(shù)木模型之外的絕大多數多邊形都是單面可見(jiàn)的.為減輕系統的運行負載,提高渲染速度,如果多邊形是單面可見(jiàn),應確保其狀態(tài)沒(méi)被設定為 2side.
2.2 紋理映射優(yōu)化
虛擬校園中所使用的紋理是用數碼相機拍攝景物表面細節獲得的數字圖像來(lái)離散定義的,之后用3 DSMAX的紋理工具進(jìn)行紋理映射和對紋理進(jìn)行編輯 ;但系統中紋理的大小、數量和分辨率受運行系統中紋理存儲空間的限制.所以為了在不降低模擬真實(shí)性的前提下,使紋理占據的系統資源(如存儲空間)盡可能少,必須對紋理數據進(jìn)行優(yōu)化,以提高系統的運行實(shí)時(shí)性.
從以下幾個(gè)方面對紋理數據進(jìn)行優(yōu)化:
1)紋理大小的合理確定.紋理大小應根據圖形加速卡性能、運行系統的內存及人的視覺(jué)生理特性等合理確定.為有效節省內存,虛擬校園中所用紋理多數是512×512或更?。叻直媛实募y理只有當虛擬場(chǎng)景需近距離觀(guān)看時(shí)才使用.
2)紋理內部格式分辨率的優(yōu)化配置.紋理內部格式分辨率決定了如何改變紋理數據各顏色分量的字節配置,以得到不同格式紋理在諸如性能、效率或圖像質(zhì)量等方面的不同效果.虛擬校園中的紋理數據做了如下的優(yōu)化處理:為節省內存 ,將源數據采集效果較好 的多數 RGB文件 內部 格式分 配為 TX— RGB一5,RGBA文件的內部格式分配為 TX—RGBA一4;有些紋理數據因為采集效果不理想,為保證圖像質(zhì)量,將其內部格式設定為 TX—RGB一12.
3)子紋理的運用.虛擬校園中有些表面的紋理細節差別較小,如不同路段的路面紋理等,采用子紋理進(jìn)行處理,既避免了明顯的雷同,又節省了內存.[
3 漫游引擎子系統的優(yōu)化
3.1 建立一個(gè)好 的層次結構庫
由于建立的模型的各個(gè)部分在層次圖中分別對應一塊面板,實(shí)時(shí)漫游系統將通過(guò)層次結構圖來(lái)展示數據庫組成,一個(gè)有序的、有條理的層次結構圖將使您的模型在實(shí)時(shí)漫游系統中以最快的速度和最正確的方式顯示出來(lái).層次結構庫也是一個(gè)可視化的數據結構庫.這種結構像一棵倒立的大樹(shù),根在最上面,樹(shù)枝、樹(shù)葉在下面.它將展示出模型的結構組織,各個(gè)組成部分以小面板的形式按照一種或多種樹(shù)形結構排列,這樣的方式十分有利于模型的修改.通過(guò)在層次結構圖中用鼠標點(diǎn)擊并拖動(dòng)小面板來(lái)編輯任意一個(gè)面,例如,單擊便可編輯視圖中的任一模型結構體,雙擊便可得到或修改結構體的屬性.而且由于面在組中或實(shí)體中時(shí)按從左到右的順序排列,如果其中有一部分是按錯誤的順序排列,可以左移或右移面板來(lái)調整它們的順序.在顯示時(shí),對于任意一點(diǎn),Z—buffer將計算這一點(diǎn)附近所有物體到屏幕的距離 ,最近的物體的顏色將被賦給這一點(diǎn),從而防止在建立面時(shí)需要對面進(jìn)行轉換或排序.另外,好的層次結構庫能夠更加方便地用于場(chǎng)景的挑選.換句話(huà)說(shuō),此虛擬場(chǎng)景結構可以根據當前視點(diǎn)來(lái)挑選場(chǎng)景中的哪一部分是可以看到的.在渲染開(kāi)始時(shí),對不可視的幾何體元素不予處理,從而加強虛擬現實(shí)場(chǎng)景的渲染階段的性能.
評論