<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 基于EON的虛擬化工場(chǎng)景優(yōu)化技術(shù)的研究

基于EON的虛擬化工場(chǎng)景優(yōu)化技術(shù)的研究

作者: 時(shí)間:2010-09-21 來(lái)源:網(wǎng)絡(luò ) 收藏

VR(Virtual Reality)是一種可以創(chuàng )建和體驗虛擬世界的計算機系統,其本質(zhì)特征要求能夠生成實(shí)時(shí)且真實(shí)的虛擬環(huán)境。虛擬環(huán)境生成從本質(zhì)上是一種限時(shí)的計算機圖形繪制技術(shù),這與傳統的單一強調逼真性的真實(shí)感圖形繪制技術(shù)有著(zhù)根本的不同。系統所要求的是實(shí)時(shí)圖形生成,一方面渲染出來(lái)的虛擬場(chǎng)景要能滿(mǎn)足一定的視覺(jué)效果,否則就違背了模擬真實(shí)的初衷;另一方面由于實(shí)時(shí)性的限制,有時(shí)不得不降低虛擬環(huán)境的幾何復雜度、降低生成圖像質(zhì)量,或采用來(lái)提高虛擬環(huán)境的速度。本文應用軟件EON,以某化工企業(yè)的生產(chǎn)現場(chǎng)為模型,建立了多處虛擬化工場(chǎng)景,制作過(guò)程中結合多種優(yōu)化理論及技術(shù)的具體應用,實(shí)現了具有工藝流程培訓、漫游交互等功能的漫游系統,可使用戶(hù)有身臨其境的真實(shí)模擬操作的感覺(jué),同時(shí)讓用戶(hù)對實(shí)際化工生產(chǎn)中的管路設計、生產(chǎn)設備和車(chē)間布置有更加感性的認識。

1 開(kāi)發(fā)平臺概述

EON Studio是美國EON Reality公司開(kāi)發(fā)的一套模塊化多用途的三維交互式仿真軟件開(kāi)發(fā)工具,它能夠讓用戶(hù)自定義行為及交互方式,也能夠進(jìn)行仿真測試及實(shí)時(shí)更改測試的參數,可應用在設計、研究、制造、生產(chǎn)、教育、訓練與維護等領(lǐng)域。EON Studio基于最新的PC技術(shù),是在OpenGL圖形標準和微軟的DirectX多媒體功能的基礎上建立起來(lái)的。通過(guò)與OpenGL和DirectX的聯(lián)系,使得利用EON所開(kāi)發(fā)的應用程序在將來(lái)圖形卡渲染能力加強的同時(shí)其渲染效果也會(huì )得到提高。EON強調資源(軟件/硬件)的集成與延展、基于Web的交互式三維文件的安全維護、逼真度及后臺數據庫的結合。EON Studio技術(shù)和VRML技術(shù)在結構上十分相似,可以認為,EON Studio技術(shù)是VRML技術(shù)基礎上的延伸和擴充,其系統組成如圖1所示。

EON Studio應用了面向對象技術(shù),不僅使得對三維世界的描述變得清晰,還通過(guò)封裝屬性和建立模擬場(chǎng)景內部消息路由,很方便地實(shí)現虛擬實(shí)體的交互和行為動(dòng)作等功能。虛擬場(chǎng)景的基本元素為節點(diǎn)(node),節點(diǎn)是EON Studio為多媒體和交互對象定義的一個(gè)對象集。節點(diǎn)[1]的屬性包含在域(field)和事件(event)中。EON Studio的節點(diǎn)類(lèi)型很豐富,具有超過(guò)100個(gè)預先設定好的功能節點(diǎn),按功能可以分為以下幾類(lèi):預設節點(diǎn);代理節點(diǎn);組裝節點(diǎn);基礎節點(diǎn);碰撞檢測節點(diǎn);可視化節點(diǎn);傳感器節點(diǎn)。

另外,EON Studio在以上基礎上又增加了Script Nodes,可以利用Java script或VB script進(jìn)行編程,處理一些復雜的仿真,擴展了EON Studio中虛擬世界的動(dòng)態(tài)行為。利用EON Studio的功能節點(diǎn),能方便地建立滿(mǎn)足用戶(hù)要求的三維虛擬場(chǎng)景,完成用戶(hù)特定的交互過(guò)程。

2 三維模型建立與優(yōu)化

2.1 三維模型建立

使用3DS MAX可以較方便地建立逼真度很高的三維模型。圖2是建立某化工場(chǎng)景模型的軟件界面。

2.2 模型的優(yōu)化

模型的優(yōu)化對漫游場(chǎng)景的瀏覽很有幫助,前期如果不對場(chǎng)景的模型進(jìn)行很好的優(yōu)化,到了制作后期再對模型進(jìn)行優(yōu)化時(shí)就需要重新回到MAX里修改模型并進(jìn)行重新烘焙后再導入到當前的EON場(chǎng)景里,這樣就出現了重復工作的情況,大大降低了工作效率。因此,模型的優(yōu)化需要在創(chuàng )建場(chǎng)景時(shí)就應受到足夠的重視。

在3DS MAX中建模的準則基本上可以歸納為以下幾點(diǎn):

(1)制作簡(jiǎn)模

漫游場(chǎng)景中運行畫(huà)面每一幀都是靠顯卡和CPU實(shí)時(shí)計算出來(lái)的,如果面數太多,會(huì )導致運行速度急劇下降,甚至無(wú)法運行;還會(huì )導致文件容量增大,在網(wǎng)絡(luò )上發(fā)布還會(huì )導致下載時(shí)間增加[2]。

(2)三角面盡量為等邊三角形

在調用模型或創(chuàng )建模型時(shí),盡量保證模型的三角面為等邊三角形,不要出現長(cháng)條型。這是因為長(cháng)條形的面不利于實(shí)時(shí)渲染,還會(huì )出現鋸齒、紋理模糊等現象。

(3)合理分布模型的密度

模型的密度分布不合理對其后面的運行速度有影響,如果模型密度不均勻,會(huì )導致運行速度時(shí)快時(shí)慢,因此,應合理地分布場(chǎng)景模型的密度。

在3DS MAX中完成模型烘焙和優(yōu)化后,輸出的Eoz文件格式,可方便地導入EON Studio進(jìn)行開(kāi)發(fā)設計。

3 EON中場(chǎng)景的優(yōu)化

初步完成化工場(chǎng)景的建模后,通過(guò)EON Viewer瀏覽的速度緩慢,甚至發(fā)生停頓現象,如果不能解決瀏覽速度問(wèn)題,整個(gè)系統就沒(méi)有什么意義了。為了解決這個(gè)問(wèn)題,首先要對該問(wèn)題的產(chǎn)生進(jìn)行分析。三維場(chǎng)景的呈現是通過(guò)瀏覽器以默認視點(diǎn)為參照對場(chǎng)景描述文件的解釋而完成的,每當用戶(hù)拖動(dòng)鼠標或按下箭頭鍵在場(chǎng)景中走動(dòng)或旋轉時(shí),視點(diǎn)就會(huì )發(fā)生變化。在真實(shí)世界中,人向前行,對面的事物會(huì )越來(lái)越近,為了模仿這種效果,每當視點(diǎn)發(fā)生變化,瀏覽器就會(huì )重新計算場(chǎng)景中各對象的新位置并重新進(jìn)行渲染,使得人能走近某個(gè)對象。當場(chǎng)景中對象較多時(shí),瀏覽器渲染的速度就跟不上視點(diǎn)變化的速度,從而產(chǎn)生停頓的現象。

由于化工廠(chǎng)場(chǎng)景巨大、管線(xiàn)繁多、工藝流程復雜等問(wèn)題,對三維場(chǎng)景的顯示與實(shí)現帶來(lái)一定的困難。筆者曾試著(zhù)采用貼圖的方法,即在一個(gè)方體上貼上相應的紋理圖來(lái)表示裝置,這種方法實(shí)現起來(lái)很簡(jiǎn)單,瀏覽器解釋速度較快,但最大的缺點(diǎn)是構建的對象缺乏三維立體感和真實(shí)感,因此貼圖的方法不適合化工場(chǎng)景。通過(guò)對三維場(chǎng)景實(shí)時(shí)繪制技術(shù)的分析與研究,提出如下優(yōu)化方式。

3.1 大量使用重用機制

不僅一個(gè)裝置內部的對象可以重用,流程相同的裝置之間也可采用重用機制。對于兩個(gè)不同的構建模型,有些泵和閥門(mén)是相同的,那么對相同的部分利用DEF與UES重用機制就可以極大地簡(jiǎn)化描述文件,最重要的是能夠減輕瀏覽器的負擔,從而提高渲染速度。重用機制的使用有個(gè)前提,即只能在一個(gè)描述文件內部使用[3]。因此,需要進(jìn)行代碼重用的2個(gè)或多個(gè)對象,它們的描述應放在同一個(gè)節點(diǎn)中。

3.2 利用EON統計值改善模擬品質(zhì)

復雜三維場(chǎng)景的實(shí)時(shí)繪制要求包括:場(chǎng)景環(huán)境中的運動(dòng)體的位置、姿態(tài)的實(shí)時(shí)計算與動(dòng)態(tài)繪制;用戶(hù)視點(diǎn)改變時(shí),畫(huà)面的刷新必須達到人眼覺(jué)察不到閃爍,即相當光滑的程度,通常為20~30幀/s,至少不能少于10幀/s;同時(shí)場(chǎng)景的環(huán)境也要求隨著(zhù)人的活動(dòng)及時(shí)產(chǎn)生相應的畫(huà)面,圖形生成必須能立即做出反應并產(chǎn)生相應的環(huán)境和場(chǎng)景。

可以利用模擬(Simulation)菜單中顯示模擬程式統計值(Show Simulation Statistics)選項,或是點(diǎn)選工具列中顯示模擬程式統計值的按鈕,啟動(dòng)模擬統計值的顯示[4]。HZ:每秒框架數目。這是一個(gè)利用數個(gè)框架計算出來(lái)的平均速率,較小的值表示框架產(chǎn)生較慢;Frm:準備框架所需的時(shí)間(s)。這個(gè)值可用來(lái)確認哪個(gè)框架耗費較多的時(shí)間;App:更新傳呼所需的時(shí)間(s);Eve:事件處理所耗費的時(shí)間(s)。Drw:繪圖所耗費的時(shí)間(s),包含下載材質(zhì)、像素填充及頂點(diǎn)轉換;#tri:繪制的三角形實(shí)際的數目(注意這個(gè)值會(huì )隨視角的改變而改變)。

隨著(zhù)統計值的變化,可實(shí)時(shí)判定具體場(chǎng)景的瀏覽速度,同時(shí)利用EON中Mesh節點(diǎn)下的Polygon Reduction level子節點(diǎn)進(jìn)行Mesh網(wǎng)格的簡(jiǎn)化,以達到適合的瀏覽效果。

3.3 合理定義顯示比例

大部分的顯卡使用材質(zhì)的影像記憶體及框架緩沖來(lái)做動(dòng)作??蚣芫彌_可分為前緩沖、后緩沖及Z緩沖,在屏幕上根據所看到影像的不同而不同。如果在視窗中執行EON模擬程式,前緩沖會(huì )涵蓋整體事件屏幕,但不影響模擬視窗的大小,在記憶體的數量上,前緩沖由Windows屏幕設定來(lái)決定。而后緩沖及Z緩沖的大小則依據目前EON模擬視窗的大小來(lái)設定。

在屏幕上繪制像素是需要時(shí)間的,當相對于視窗大小的框架速率很大時(shí),像素填充會(huì )設定模擬速度的極限。要降低像素填充所花費的時(shí)間,可使用較小的模擬視窗,點(diǎn)選大小/方位比例(Size/Aspect Ratio)標簽,并輸入模擬視窗大小,降低透支(Overdraw)的程度(例如空間內部結構的模擬),合理地將場(chǎng)景進(jìn)行分割并保存為獨立的Edz文件,利用改變模擬(Change Simulation)功能節點(diǎn)來(lái)進(jìn)行切換,也可利用在框架功能節點(diǎn)的特性視窗中選取隱藏(Hidden)選項,讓漫游瀏覽中尚未看到的幾何物件暫時(shí)不顯示。

3.4 利用場(chǎng)景切換技術(shù)實(shí)現同一對象不同模型的自動(dòng)切換

有針對性地為場(chǎng)景中面數復雜的裝置建立多個(gè)不同的模型,使場(chǎng)景在顯示的時(shí)候以不同模型多方面顯示,如圖3所示。最簡(jiǎn)單的是建立簡(jiǎn)單和細化兩種模型,當視點(diǎn)距對象較遠時(shí)采用簡(jiǎn)單模型,視點(diǎn)接近時(shí)自動(dòng)切換為該對象的細化模型。采用這種辦法,需對某對象建立多個(gè)模型,并利用Switch、LOD節點(diǎn)或觸發(fā)器實(shí)現模型的切換[5]。在切換過(guò)程中,要對切換時(shí)間進(jìn)行設置,使切換時(shí)間小于人眼眨動(dòng)頻率,畫(huà)面看起來(lái)更加逼真。這種方法既能夠減小面數、提高演示速度,又能夠使人感覺(jué)不到明顯的切換痕跡,是虛擬現實(shí)領(lǐng)域應該繼續沿用并加以延伸的方法。

3.5 漫游系統優(yōu)化測試

虛擬現實(shí)漫游技術(shù)的一大困難在于漫游仿真速度與運行速度之間的矛盾。在建立最佳仿真程度模型的同時(shí)又要保證速度的運行是要重點(diǎn)協(xié)調的問(wèn)題。本系統運行的硬件配置為:處理器Pentiu(R)4 3.0 GHz,內存1 GB,顯卡使用NVIDIA Geforce 7300GT(256 MB),在臺式機上進(jìn)行了優(yōu)化測試,測試結果如表1所示。

利用EON Studio建立的虛擬化工場(chǎng)景,以某化工企業(yè)的生產(chǎn)場(chǎng)景為模型,實(shí)現了該虛擬場(chǎng)景的漫游,如圖4所示。使用者可以對場(chǎng)景進(jìn)行全方位瀏覽,也可對局部進(jìn)行細致的觀(guān)察;并配合適當的講解,最終對該生產(chǎn)過(guò)程產(chǎn)生一個(gè)清晰、深刻的認識。通過(guò)對模型部分優(yōu)化與在EON Studio中進(jìn)行的必要優(yōu)化,符合實(shí)時(shí)交互頻率15幀/s以上的漫游要求,加快了三維場(chǎng)景的實(shí)時(shí)繪制速度,提供了良好的漫游瀏覽速度。該優(yōu)化方法具有一定的普遍性,對后續漫游信息系統的完善和二次開(kāi)發(fā)提供了必要的保證。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>