国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于VRML的三維虛擬場(chǎng)景的構(gòu)建與優(yōu)化

2009-01-06 04:55:38雒偉群
關(guān)鍵詞:虛擬現(xiàn)實(shí)優(yōu)化

[摘 要]本文對(duì)基于VRML的虛擬場(chǎng)景的設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行了研究,并從減少文件長(zhǎng)度,提高渲染速度兩方面提出了優(yōu)化場(chǎng)景的方法。

[關(guān)鍵詞]虛擬現(xiàn)實(shí) 虛擬場(chǎng)景 優(yōu)化

[中圖分類號(hào)]TP39[文獻(xiàn)標(biāo)識(shí)碼]A[文章編號(hào)]1007-9416(2009)11-0036-02

The Construction and Optimization of a Three-Dimensional Virtual Scene Based on VRML

LUO Wei-Qun

(Information engineering college, Tibet Nationalities Institute, Shanxi 712082)

[Abstract] There has conducted the research of the design and implementation of a virtual scene based on VRML, and proposed some optimizations which reduced file length and improved the rendering speed.

[Keywords] virtual reality; virtual scene; optimization

隨著網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,越來(lái)越多基于VRML的虛擬作品出現(xiàn)在互聯(lián)網(wǎng)絡(luò)中。對(duì)于規(guī)則場(chǎng)景利用VRML的對(duì)象建模較為容易,且定義虛擬場(chǎng)景的對(duì)象文件短小精悍,易于閱讀。但隨著虛擬場(chǎng)景復(fù)雜性的提高和應(yīng)用的日漸深入,VRML在展現(xiàn)虛擬場(chǎng)景方面的不足也逐漸暴露出來(lái),諸如程序代碼龐大,視點(diǎn)位置不理想,交互性不足,穩(wěn)定性和一致性不能滿足某些特殊應(yīng)用需求等問(wèn)題。所以,開(kāi)展基于VRML的虛擬場(chǎng)景的優(yōu)化分析非常必要。

1 VRML技術(shù)

VRML(Virtual Reality Modeling Language 虛擬現(xiàn)實(shí)建模語(yǔ)言)是一種用來(lái)描述交互或3D對(duì)象和境界的文件格式。從VRML的定義可以看出,VRML設(shè)計(jì)初衷是想成為集成3D圖形和多媒體的通用交換格式,而這一點(diǎn)已經(jīng)成為現(xiàn)實(shí)。VRML文件格式成為在AUTO CAD等三維工業(yè)標(biāo)準(zhǔn)進(jìn)行共享的唯一通用文件格式而得到了廣泛的應(yīng)用。

VRML可以作為一種形式化描述語(yǔ)言,對(duì)于采用模糊自然語(yǔ)言表達(dá)的系統(tǒng)通過(guò)建模,從而實(shí)現(xiàn)對(duì)系統(tǒng)確切的、通用的形式化描述。經(jīng)過(guò)形式化后的系統(tǒng)模型即可直接用于計(jì)算機(jī)程序設(shè)計(jì)和編程。VRML同時(shí)可以作為一種編程工具,實(shí)現(xiàn)包括場(chǎng)景圖、用戶交互以及后臺(tái)計(jì)算的程序,構(gòu)造一個(gè)具有完整功能的虛擬現(xiàn)實(shí)系統(tǒng)。

VRML的應(yīng)用平臺(tái)是Internet和本地客戶系統(tǒng)。這種應(yīng)用極大地?cái)U(kuò)張了VRML的應(yīng)用,如工程與科學(xué)、可視化計(jì)算、多媒體、共享式VR系統(tǒng)以及教育等。

2 三維虛擬場(chǎng)景的設(shè)計(jì)

本文以數(shù)字電路虛擬實(shí)驗(yàn)室為原型,通過(guò)建立一個(gè)虛擬場(chǎng)景對(duì)整個(gè)結(jié)構(gòu)進(jìn)行分析。

2.1 大型場(chǎng)景的樹(shù)形結(jié)構(gòu)組織

對(duì)象的幾何建模就是用來(lái)描述對(duì)象內(nèi)部固有的幾何性質(zhì)的抽象模型,因此場(chǎng)景中對(duì)象模型的組織結(jié)構(gòu)對(duì)虛擬實(shí)驗(yàn)系統(tǒng)的運(yùn)行質(zhì)量起著關(guān)鍵性的作用,合理的模型組織結(jié)構(gòu)是必須的,并且實(shí)驗(yàn)者需要與虛擬儀器進(jìn)行交互操作,因此應(yīng)該根據(jù)虛擬實(shí)驗(yàn)室中每個(gè)實(shí)體的幾何空間位置,以及模型間的結(jié)構(gòu)關(guān)系,確定虛擬場(chǎng)景中實(shí)體模型的樹(shù)狀層次結(jié)構(gòu)。這種層次結(jié)構(gòu)使我們可以使用自頂向下的方法將一個(gè)模型對(duì)象分解,也可以使用自底向上的構(gòu)造方法重構(gòu)一個(gè)模型對(duì)象,把所有對(duì)象用雙親、孩子和兄弟劃分成最有效的樹(shù)結(jié)構(gòu)。這種樹(shù)形結(jié)構(gòu)不僅提供了一種簡(jiǎn)便的自然的分割復(fù)雜物體的方法,而且對(duì)模型的修改也十分有利。下圖為虛擬場(chǎng)景的層次模型(簡(jiǎn)要描述了虛擬場(chǎng)景的層次結(jié)構(gòu))。

如圖1所示。

對(duì)場(chǎng)景進(jìn)行層次結(jié)構(gòu)劃分后,可以方便地進(jìn)行實(shí)體模型的組織和管理,而實(shí)體模型內(nèi)部的層次結(jié)構(gòu)劃分能將復(fù)雜模型自頂向下分解成若干基本單元,明確模型構(gòu)建目標(biāo),大大減輕建模的工作量。

2.2 子場(chǎng)景建模

所謂幾何建模,是指虛擬環(huán)境中可見(jiàn)的3D物體空間形狀以及各種附屬性質(zhì)的描述。一般有兩種方法可以建造虛擬環(huán)境中各種場(chǎng)景與對(duì)象的三維模型。

(1)采用三維建模軟件手工繪制三維模型。這需要精通各種繪畫(huà)技法和熟練掌握三維建模軟件的使用方法與技巧。好萊塢電影特技往往采用這種方法實(shí)現(xiàn)的。這種方法需要用戶承擔(dān)高額的人工費(fèi)用。三維建模軟件一般選擇3DS MAX,優(yōu)點(diǎn)就是省時(shí)省力,大量的坐標(biāo)計(jì)算交由建模軟件完成,設(shè)計(jì)者只需按照自己的意愿進(jìn)行設(shè)計(jì)即可。對(duì)于不規(guī)則對(duì)象模型,可考慮使用該方法進(jìn)行。缺點(diǎn)就是對(duì)物體描述的精度較高,使得轉(zhuǎn)換后的VRML文件中存在大量的垃圾代碼,需要優(yōu)化處理。對(duì)于虛擬實(shí)驗(yàn)室中的面包板、數(shù)字電路芯片等我們采用該方法。

(2)使用建模軟件實(shí)現(xiàn)自動(dòng)三維。一般直接利用VRML定義虛擬實(shí)驗(yàn)室場(chǎng)景中的對(duì)象,包括三維模型、紋理、材質(zhì)、色彩,以及對(duì)象幾何體的平移、旋轉(zhuǎn)、縮放等。這種方法的優(yōu)點(diǎn)是對(duì)于規(guī)則場(chǎng)景對(duì)象建模較為容易,且定義虛擬場(chǎng)景的對(duì)象文件短小精悍,易于閱讀。缺點(diǎn)就是定義的虛擬場(chǎng)景對(duì)象較為復(fù)雜時(shí), 要書(shū)寫(xiě)大量的代碼,并且要進(jìn)行大量的坐標(biāo)運(yùn)算,非常繁瑣。對(duì)于虛擬實(shí)驗(yàn)室場(chǎng)景中的實(shí)驗(yàn)臺(tái)、地板、天花板、墻等采用該方法建立。

3 優(yōu)化設(shè)計(jì)

在創(chuàng)建復(fù)雜的VRML場(chǎng)景時(shí),除了創(chuàng)建大量的模型外,還必須考慮兩件事,VRML文件的長(zhǎng)度和場(chǎng)景的渲染速度。VRML文件的大小在兩方面影響到場(chǎng)景,一方面是服務(wù)器與瀏覽器之間的傳輸時(shí)間;另一方面是將場(chǎng)景載入瀏覽器的時(shí)間。如果這些時(shí)間過(guò)長(zhǎng),瀏覽者將無(wú)法忍受。渲染的速度則直接影響瀏覽者瀏覽的速度,速度過(guò)低將使場(chǎng)景失去真實(shí)感。所以在創(chuàng)建場(chǎng)景的同時(shí)必須要考慮對(duì)場(chǎng)景的優(yōu)化。

3.1 減少文件傳輸數(shù)據(jù)量

由3DS MAX輸出的VRML文件有很多代碼都是重復(fù)的,從而導(dǎo)致文件過(guò)大。比如面包板對(duì)應(yīng)的VRML文件有近4萬(wàn)多行,達(dá)到2MB,如果直接將其加到實(shí)驗(yàn)室場(chǎng)景中將使得程序運(yùn)行速度極其緩慢,所以必需對(duì)于建立的三維模型進(jìn)行優(yōu)化。

以下是一些精簡(jiǎn)文件大小的常用方法:

(1)利用DEF、USE和PROTO對(duì)實(shí)例進(jìn)行重用

在場(chǎng)景中經(jīng)常有部分節(jié)點(diǎn)有著相同或相近的特點(diǎn),它們的外形相同,僅是位置上有差別,我們可以通過(guò)使用DEF/USE結(jié)構(gòu),先用DEF定義一個(gè)節(jié)點(diǎn)副本,然后多次利用USE引用,這種引用的效果就是產(chǎn)生該節(jié)點(diǎn)的多個(gè)副本。與DEF、USE相比,PROTO節(jié)點(diǎn)(原型結(jié)點(diǎn))的使用更需要對(duì)場(chǎng)景進(jìn)行組織,在場(chǎng)景中存在一些節(jié)點(diǎn),它們有相同的功能,但有一些屬性上的區(qū)別,如顏色、紋理等,這時(shí)便可通過(guò)原型設(shè)計(jì)來(lái)優(yōu)化。利用DEF、USE和PROTO對(duì)實(shí)例進(jìn)行重用可以達(dá)到減小文件長(zhǎng)度,節(jié)約內(nèi)存資源的效果。

例如,在面包板模型中,輸入輸出引線插口有128個(gè),它們具有相同的造型,只是位置不同而已,3DS MAX在輸出VRML文件時(shí),對(duì)于這128個(gè)插口分別使用索引面集(IndexedFaceSet)辦法生成模型,造成大量代碼重復(fù),可先將基本造型定義成原型節(jié)點(diǎn)Tube,然后通過(guò)在適當(dāng)位置采用實(shí)例化Tube的辦法可將大量的重復(fù)代碼優(yōu)化。

對(duì)于14腳芯片插座、16腳芯片插座、20腳芯片插座中的管腳重復(fù)代碼也可進(jìn)行優(yōu)化,先對(duì)一個(gè)管腳節(jié)點(diǎn)用DEF定義成Tube節(jié)點(diǎn),對(duì)于其它重復(fù)的代碼用USE引用Tube節(jié)點(diǎn)即可。

(2)消除空白間隔

由于VRML文件是按文本方式保存的,也就是說(shuō)所有的空行、空格都被保存下來(lái),這樣便增加了文件的長(zhǎng)度,但瀏覽器在解釋VRML程序時(shí),并不需要這些空行、空格,所以這些不必要的空格應(yīng)該刪除。但并不是所有的空格都應(yīng)刪除,空格能保證文件的可讀性。另外,必要的注釋也應(yīng)保留。

(3)數(shù)據(jù)的優(yōu)化

當(dāng)場(chǎng)景達(dá)到一定的規(guī)模,其間的數(shù)據(jù)量是相當(dāng)可觀的,數(shù)據(jù)的存儲(chǔ)與運(yùn)算也變得十分繁重,因此有必要對(duì)數(shù)據(jù)進(jìn)行優(yōu)化。一種方法是對(duì)數(shù)據(jù)取整??梢哉J(rèn)為一個(gè)數(shù)據(jù)在取整后誤差小于1%,那么它不會(huì)影響到場(chǎng)景的效果。另一種方法是對(duì)數(shù)據(jù)固定精度,多余的部分將被刪除。精度的確定取決于場(chǎng)景與模型的本身,以不影響效果為準(zhǔn)。數(shù)據(jù)的優(yōu)化在使用導(dǎo)入模型時(shí)顯得非常重要,一般的導(dǎo)入工具經(jīng)常產(chǎn)生過(guò)高的精度,使數(shù)據(jù)過(guò)于龐大,像0.0000000000435這種數(shù)據(jù)許多時(shí)候都可以用0來(lái)代替。

(4)利用VRMLPAD壓縮VRML文件

由于VRML文件是以文本的方式保存,它的壓縮潛力是比較大的,目前大多數(shù)瀏覽器都支持直接壓縮的VRML文件。通過(guò)VRMLPAD編輯環(huán)境主菜單File下的Publish命令,就可以把一般的VRML文件進(jìn)行壓縮至原來(lái)1/10左右,這將極大地減少網(wǎng)絡(luò)傳輸時(shí)間。

3.2 提高渲染速度

當(dāng)你進(jìn)入一個(gè)復(fù)雜的3D場(chǎng)景時(shí),隨著里面的景物的增多,會(huì)明顯地感到瀏覽的速度減慢,太慢時(shí)會(huì)嚴(yán)重影響場(chǎng)景的真實(shí)性與交互性。一般來(lái)說(shuō),如果瀏覽器者通過(guò)瀏覽器每秒看到的幀數(shù)少于10幀,就會(huì)覺(jué)得不自然。所以必須保證場(chǎng)景的渲染速度。可以通過(guò)以下技巧的使用,在不損失效果的同時(shí),提高渲染的速度。

(1)減少多邊形的數(shù)目

增加模型的多邊形數(shù)目可以使幾何體更具真實(shí)感,但不能無(wú)限制地增加多邊形的數(shù)目,一旦多邊形數(shù)目超過(guò)機(jī)器的運(yùn)算能力,瀏覽器的畫(huà)面將停滯。所以在創(chuàng)建模型時(shí),必須減少模型的多邊形數(shù)目。選擇模型的構(gòu)成節(jié)點(diǎn)時(shí),盡量用Box、Sphere、Cone、Cyclinder這些規(guī)則幾何節(jié)點(diǎn)。使用IndexedFaceSet、IndexedLineSet、Extrusion這些復(fù)雜節(jié)點(diǎn)時(shí),應(yīng)盡量減少頂點(diǎn)個(gè)數(shù)。

一般來(lái)說(shuō),模型的細(xì)節(jié)程度是影響其逼真性的重要因素之一。細(xì)節(jié)程度越高,模型越逼真。但是,建立模型的目的是為了給虛擬現(xiàn)實(shí)系統(tǒng)創(chuàng)造一個(gè)虛擬環(huán)境,并在其中實(shí)現(xiàn)交互等特定任務(wù)。因此建立模型時(shí)還需要考慮到整個(gè)系統(tǒng)的綜合性能。如果在建模時(shí)過(guò)分強(qiáng)調(diào)細(xì)節(jié),對(duì)于所有結(jié)構(gòu)和表面特征都加以實(shí)現(xiàn),而忽略了場(chǎng)景整體結(jié)構(gòu)的優(yōu)化設(shè)計(jì),不僅會(huì)使工作量驟然增大,而且可能導(dǎo)致整個(gè)系統(tǒng)的運(yùn)行速度下降,性能降低。因此,在建模過(guò)程中一定要有整體觀念,意識(shí)到模型細(xì)節(jié)和系統(tǒng)性能之間的相互制約性,不可盲目追求真實(shí)而無(wú)限細(xì)化模型。在虛擬實(shí)驗(yàn)室系統(tǒng)中,可只將一些重要實(shí)驗(yàn)儀器進(jìn)行細(xì)致建模,通過(guò)采用紋理映射技術(shù)來(lái)盡量避免細(xì)節(jié)模型的大量產(chǎn)生。

(2)光源的使用

光源對(duì)增強(qiáng)明暗效果有很大幫助,但過(guò)多使用光源將帶來(lái)大量的運(yùn)算量。光源的運(yùn)算量各不相同,DirectionLight、PointLight、SpotLight運(yùn)算量依次增加。在同一個(gè)場(chǎng)景中,不應(yīng)使用過(guò)多的光源。一般來(lái)說(shuō),DirectionLight不要超過(guò)8個(gè),PointLignt、SpotLight不要多于3個(gè)。光源的作用范圍也要進(jìn)行控制,如在Transform內(nèi)部的光源就只對(duì)內(nèi)部的幾何節(jié)點(diǎn)產(chǎn)生效果。如果只對(duì)個(gè)別物體產(chǎn)生光照,盡量使用局部光源,避免使用全局光源。對(duì)于PointLight和SpotLight來(lái)說(shuō),可以減少光源的作用范圍(radium)來(lái)減少運(yùn)算。

(3)充分利用紋理

幾何體要產(chǎn)生逼真的效果,很大程度上依賴于紋理的使用,因此在一個(gè)場(chǎng)景中通常會(huì)用到多處紋理。但如果紋理使用不當(dāng),也會(huì)給系統(tǒng)帶來(lái)很大的負(fù)擔(dān)。

在使用紋理時(shí)盡量使用簡(jiǎn)單紋理。首先考慮使用單元素紋理,單元素紋理只有亮度的影響,0xFF表示亮度最大,0x00表示全黑。通過(guò)單元素紋理與Material中的diffuseColor配合使用,能產(chǎn)生很好的效果,同時(shí)因?yàn)槭菃卧丶y理,瀏覽器處理起來(lái)十分快。然后考慮使用小塊的紋理。紋理是可以不斷延伸與重復(fù)的,所以盡量使用小一點(diǎn)的紋理圖,例如構(gòu)成實(shí)驗(yàn)室場(chǎng)景中的地板,只要很小一塊紋理圖,再通過(guò)在各個(gè)方向上的重復(fù)便可鋪滿整個(gè)地面,這與使用大紋理圖產(chǎn)生的效果是一樣的。

4 結(jié)語(yǔ)

虛擬現(xiàn)實(shí)作為一門(mén)新興的、發(fā)展中的技術(shù),潛力是巨大的。本文介紹了構(gòu)建虛擬場(chǎng)景的方法,并針對(duì)虛擬現(xiàn)實(shí)系統(tǒng)具有的數(shù)據(jù)量大問(wèn)題,提出了一些優(yōu)化方法。應(yīng)用這些方法建立的電子虛擬實(shí)驗(yàn)室取到了較好的效果。對(duì)于建立其他場(chǎng)景構(gòu)建,有一定的示范作用。

[參考文獻(xiàn)]

[1] 雒偉群.基于VRML的交互式虛擬實(shí)驗(yàn)室的研究與實(shí)現(xiàn)[D].天津大學(xué)碩士論文,2004.

[2] 衣李娜,何丕廉,雒偉群.基于VRML的虛擬實(shí)驗(yàn)室設(shè)計(jì)方法 [J].曲阜師范大學(xué)學(xué)報(bào),2005年10月第31卷第4期,P74-76.

[3] 衣李娜,雒偉群.基于VRML的虛擬實(shí)驗(yàn)室交互控制方法研究[J].微處理機(jī),2006年8月第四期,P109-114.

[4] 韓定定.電子線路虛擬實(shí)驗(yàn)室的Java實(shí)現(xiàn)[J]計(jì)算機(jī)工程,2006年11月第32卷第21期,P264 -266.

[5] 李曉霞.基于VRML的交互式虛擬場(chǎng)景設(shè)計(jì)及其優(yōu)化.[J]太原師范學(xué)院學(xué)報(bào),2007年6月第6卷第2期,P61-66.

猜你喜歡
虛擬現(xiàn)實(shí)優(yōu)化
超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
關(guān)于優(yōu)化消防安全告知承諾的一些思考
一道優(yōu)化題的幾何解法
由“形”啟“數(shù)”優(yōu)化運(yùn)算——以2021年解析幾何高考題為例
論虛擬現(xiàn)實(shí)藝術(shù)的“沉浸”
REALITY BITES
風(fēng)口上的虛擬現(xiàn)實(shí)
商周刊(2017年24期)2017-02-02 01:42:55
虛擬現(xiàn)實(shí)技術(shù)向科幻小說(shuō)借靈感
海外星云(2016年7期)2016-12-01 04:18:00
HTC斥資千萬(wàn)美元入股虛擬現(xiàn)實(shí)設(shè)備商WEVR
宜春市| 江孜县| 潮州市| 轮台县| 青川县| 永和县| 南投县| 灵川县| 横峰县| 呼伦贝尔市| 原平市| 重庆市| 肇州县| 独山县| 抚顺县| 乐陵市| 潼关县| 华阴市| 大关县| 和平区| 临西县| 泽普县| 威信县| 武夷山市| 浠水县| 苏尼特右旗| 商丘市| 明水县| 凤冈县| 丰城市| 赤城县| 周口市| 墨竹工卡县| 南昌县| 黔江区| 平谷区| 双鸭山市| 全南县| 霍邱县| 明溪县| 包头市|