天天被操天天被操综合网,亚洲黄色一区二区三区性色,国产成人精品日本亚洲11,欧美zozo另类特级,www.黄片视频在线播放,啪啪网站永久免费看,特别一级a免费大片视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>計(jì)算機(jī)論文>虛擬城市的開發(fā)技術(shù)探討

虛擬城市的開發(fā)技術(shù)探討

時(shí)間:2023-02-20 22:42:59 計(jì)算機(jī)論文 我要投稿

虛擬城市的開發(fā)技術(shù)探討

虛擬城市的開發(fā)技術(shù)探討

武漢測(cè)繪科技大學(xué)土地科學(xué)學(xué)院  涂超

摘要:本文介紹了虛擬城市的原理及其開發(fā)技術(shù),闡述了虛擬現(xiàn)實(shí)應(yīng)用開發(fā)基本手段和過程,并進(jìn)一步敘述了優(yōu)化應(yīng)用的常用技巧。

關(guān)鍵詞:虛擬城市,VRML, LOD

長(zhǎng)期以來(lái),城市規(guī)劃人員的一個(gè)重要的工作就是進(jìn)行各種設(shè)計(jì)或規(guī)劃圖的繪制,但是這些圖紙并不能給人們提供一個(gè)直觀的、富有真實(shí)感的場(chǎng)景。后來(lái),人們雖然也使用紙板或木料來(lái)制作三維模型,以實(shí)現(xiàn)城市景觀的三維可視化。但其制作的工作量巨大、費(fèi)用昂貴、須具備較高的制作技巧,而且僅能從外圍觀看,無(wú)法進(jìn)入,修改也很困難。鑒于以上原因,在計(jì)算機(jī)上建立三維虛擬城市成為必然。虛擬城市的建立能夠全方位地、直觀地給人們提供有關(guān)城市的各種具有真實(shí)感的場(chǎng)景信息,并可以以第一人稱的身份進(jìn)入城市,感受到與實(shí)地觀察相似的真實(shí)感。虛擬城市的各種模型易于修改,而且可以實(shí)現(xiàn)城市信息的查詢與分析功能。這些都是傳統(tǒng)的方法所無(wú)法比擬的。本文用制作實(shí)例的方式探討了虛擬城市的開發(fā)技術(shù)。

1. 虛擬城市開發(fā)的基本原理

要建立虛擬城市,首先要建立三維城市模型。三維城市空間中的典型實(shí)體對(duì)象一般具有以下幾種:城市中的各種建筑物、街道、綠地、公共場(chǎng)所、城市地形、樹木等。除此以外,還有一些輔助性的設(shè)施,如消防栓、變電站、噴泉、公園的長(zhǎng)椅等。這些模型的制作可以采用編程的方法或者現(xiàn)有的三維模型制作軟件來(lái)完成。所謂編程的方法是在程序中利用三維空間中的坐標(biāo)點(diǎn)和圖形繪制函數(shù)來(lái)實(shí)現(xiàn)模型的建立,由于城市模型的造型十分復(fù)雜,因而很難確定模型的具體幾何數(shù)據(jù),此方法多用來(lái)制作地形模型,對(duì)于其他模型的制作則很少采用。制作城市模型的最好的方法是使用現(xiàn)有的成熟的三維設(shè)計(jì)軟件,如:3DSMAX、TRUESPACE等。

虛擬城市除了能實(shí)現(xiàn)城市信息的三維可視化外,其另一個(gè)重要的功能就是能實(shí)現(xiàn)城市專題信息的查詢功能,甚至實(shí)現(xiàn)一定的分析功能?梢詫⑻摂M城市定義為以下公式:

虛擬城市=三維城市模型+專題信息+查詢功能+分析功能

要實(shí)現(xiàn)一個(gè)虛擬城市系統(tǒng)可考慮以下兩種方案:

一種方案是利用高級(jí)語(yǔ)言和三維圖形開發(fā)庫(kù)的方法,常用的開發(fā)語(yǔ)言是C++,常用的圖形開發(fā)庫(kù)是OpenGL3D或者 Directx3D。此方法的特點(diǎn)是開發(fā)的靈活性強(qiáng)、能實(shí)現(xiàn)功能復(fù)雜的應(yīng)用系統(tǒng)。其缺點(diǎn)是開發(fā)者須熟練掌握編程技術(shù),并且具備較高的計(jì)算機(jī)圖形學(xué)知識(shí)。另外,還要學(xué)習(xí)OpenGL3D或者 Directx3D的復(fù)雜開發(fā)技術(shù)。此方案的實(shí)現(xiàn)難度大,一般用戶根本無(wú)法勝任。其實(shí)現(xiàn)的應(yīng)用系統(tǒng)也很難滿足網(wǎng)上使用的要求。

第二種方案是使用專用的三維虛擬開發(fā)工具,目前廣泛使用的是VRML語(yǔ)言。VRML(虛擬現(xiàn)實(shí)造型語(yǔ)言)是一種描述交互式三維世界和對(duì)象的文件格式。VRML允許描述對(duì)象并把對(duì)象組合到虛擬場(chǎng)景中,可以實(shí)現(xiàn)仿真系統(tǒng),可模擬動(dòng)畫、具有動(dòng)力學(xué)特性的物體。VRML能構(gòu)造一個(gè)全交互的世界,其中的對(duì)象能對(duì)外部事件做出響應(yīng),并可在其中任意穿行。另外,其重要特性是支持虛擬場(chǎng)景的網(wǎng)上發(fā)布,并可實(shí)現(xiàn)多用戶的實(shí)時(shí)參與。VRML比高級(jí)語(yǔ)言容易掌握,并且無(wú)須再去了解OpenGL3D或者 Directx3D之類的三維圖形開發(fā)庫(kù),這對(duì)于普通用戶來(lái)說(shuō)無(wú)疑是一個(gè)福音。若配以Java程序的支持,也可實(shí)現(xiàn)功能較強(qiáng)大的系統(tǒng)。

綜合以上兩種方法,對(duì)于功能不太復(fù)雜的應(yīng)用,采用后一種方法較為合適。下面我們將就后一種方案詳細(xì)介紹虛擬城市開發(fā)的技術(shù)細(xì)節(jié)。

2. 虛擬城市的開發(fā)技術(shù)

2.1.三維城市模型的建立

虛擬場(chǎng)景的建立和建筑CAD中的場(chǎng)景的建立有著很大的區(qū)別,它首先強(qiáng)調(diào)的是模型的簡(jiǎn)單化,這是由虛擬現(xiàn)實(shí)的實(shí)時(shí)性要求決定的。在響應(yīng)速度和場(chǎng)景的真實(shí)性發(fā)生沖突時(shí),應(yīng)犧牲一定的真實(shí)性,只要能在視覺上達(dá)到基本真實(shí)即可。因此,常用一些簡(jiǎn)單的框架來(lái)代替復(fù)雜模型,但為了保證一定的真實(shí)性,可采用貼圖的方式來(lái)彌補(bǔ)視覺上的不足。貼圖有以下兩種制作方法:一種是使用繪畫軟件進(jìn)行手工繪制、另一種是對(duì)建筑物的各個(gè)觀察面進(jìn)行拍照,然后用掃描儀掃描成相關(guān)貼圖材質(zhì)。第一種方法的顏色可限定在256色內(nèi),其壓縮的比例較大,貼圖文件較小,生成的場(chǎng)景文件也較小,適合網(wǎng)上傳遞和實(shí)時(shí)性的要求。后一種方法視覺效果好,但文件的壓縮比例較小,貼圖文件較大,生成的場(chǎng)景大,在網(wǎng)上傳遞和實(shí)時(shí)性方面不如前一種方法好。無(wú)論用哪一種方法都需考慮貼圖的分辨率和尺寸,為了便于下載和渲染,在質(zhì)量和大小允許的情況下,一幅貼圖限為320*240(或240*320)像素、分辨率為72dpi,用JPEG壓縮(采用最高壓縮比)后約為20K字節(jié)。

根據(jù)以上所述的貼圖制作方法,虛擬場(chǎng)景中的對(duì)象模型可分為以下幾類:

(a)由簡(jiǎn)單幾何體組成的簡(jiǎn)單模型:該類模型常用作遠(yuǎn)處建筑物的替身,在LOD方法中采用;

(b) 賦予手繪貼圖的模型;

(c) 賦予照片材質(zhì)的模型;

(d) 賦予手繪和照片混合材質(zhì)的模型;

(e) 具有全部細(xì)節(jié)的精致模型;

2.1.虛擬城市交互查詢功能的建立

為虛擬城市模型加入交互和查詢功能可采用兩種方法:通過編程加入相應(yīng)的交互和查詢功能、利用VRML的輔助工具來(lái)完成交互和查詢功能的加入。后一種方法比較適合普通的用戶。

Kinetix制作了特殊的VRML輸出嵌入程序,可以輸出場(chǎng)景,包括幾何、材質(zhì)、動(dòng)畫制作等,嵌入程序也可制作特殊的VRML輔助工具來(lái)規(guī)定場(chǎng)景的交互元素。運(yùn)行VRML嵌入 程序VRMLOUT.EXE即可安裝VRML嵌入程序。
通過VRML嵌入程序,可設(shè)置以下輔助工具:

Anchor:可將某一實(shí)體作為熱點(diǎn),當(dāng)被點(diǎn)擊時(shí),取出網(wǎng)上所指定的文件。若為VRML場(chǎng)景文件,則該場(chǎng)景被下載顯示。若為其他類型文件,由瀏覽器決定如何處理;

TouchSensor:對(duì)從指定設(shè)備的輸入產(chǎn)生相應(yīng)的事件,這些事件表示用戶是否指向特定幾何體,同時(shí)也表示用戶何時(shí)何處按下定位設(shè)備的按鈕;

ProxSensor:接近感知器,指定當(dāng)用戶進(jìn)入、離開或在立方體的區(qū)域內(nèi)移動(dòng)時(shí)產(chǎn)生的事件;

TimeSensor:在時(shí)間變化是發(fā)出事件,可用來(lái)控制動(dòng)畫,也可用于某一時(shí)刻進(jìn)行某項(xiàng)活動(dòng),或于某一時(shí)間間隔中產(chǎn)生事件;

NavInfo:描述有關(guān)觀察者和觀察模式的物理特性;

Background:設(shè)定場(chǎng)景的背景;

Fog:設(shè)置霧化的效果;

Sound:設(shè)定聲音片段的有效范圍,以產(chǎn)生隨距離改變的音響效果;

Billboard:是某一對(duì)象隨用戶一起旋轉(zhuǎn),以使之始終面向用戶;

LOD:允許瀏覽器在物體表示的不

同層次細(xì)節(jié)間自動(dòng)切換;

Inline:可在文件中引入外部文件的場(chǎng)景,避免重復(fù)制作。

通過以上輔助工具,就可制作出虛擬城市場(chǎng)景及其交互和查詢功能。

2.3.若干開發(fā)技巧介紹

2.3.1 減少文件大小的方法

(1) 使用實(shí)例:對(duì)于在場(chǎng)景中多次使用的對(duì)象,可在該對(duì)象首次使用時(shí)用DEF給物體命名,以后僅需通過名字即可引用該物體。

(2) 使用原型:原型物體是指那些使用頻繁且改動(dòng)不大的物體。使用它可減少文件的大小。由于使用了DEF/USE方法,物體一旦定義,只要指定發(fā)生變化的公共接口即可。另外,原型顯示出場(chǎng)景層次中哪一部分可修改,瀏覽器可自由地優(yōu)化那些不修改的部分。

(3) 壓縮文件:在發(fā)布文件前,使用gzip工具壓縮VRML文件和相關(guān)的HTML文件,大約可是文件減小10~100倍。

2.3.2 提高渲染速度的技巧

(1) 簡(jiǎn)化場(chǎng)景:簡(jiǎn)化場(chǎng)景有以下方法:

·減少多邊形的數(shù)目,這可極大地提高執(zhí)行的性能;

·使用紋理代替多邊形造型,既可美化場(chǎng)景又可提高性能;

·使用灰度圖的紋理;

·盡量少用光源,這將有效地提高渲染的速度;

·使用布告板節(jié)點(diǎn),此節(jié)點(diǎn)允許在場(chǎng)景中使用二維圖象來(lái)模擬三維造型并旋轉(zhuǎn),從而始終面對(duì)觀察者。此法既減小了文件又不影響真實(shí)效果,可用來(lái)制作樹木、電線桿、路牌、消防栓等輔助性對(duì)象;

(2)場(chǎng)景分割:將大的場(chǎng)景分為多個(gè)相對(duì)獨(dú)立的小場(chǎng)景,通過Anchor節(jié)點(diǎn)為場(chǎng)景中邏輯上分離的部分建立連接關(guān)系;

(3)自適應(yīng)LOD節(jié)點(diǎn):若在LOD的range域中未明確指定具體值,瀏覽器會(huì)在給定時(shí)刻決定哪一層物體需要顯示。該節(jié)點(diǎn)允許根據(jù)硬件平臺(tái)的能力調(diào)整場(chǎng)景的細(xì)節(jié)程度。在建立一條街道時(shí),由于街道兩邊有許多精細(xì)的建筑物,要對(duì)它們進(jìn)行實(shí)時(shí)渲染是不可能的,但又不能不可見,僅需讓用戶能以一定的速度前進(jìn)即可。在此,可為每個(gè)建筑物建立兩個(gè)LOD節(jié)點(diǎn),一個(gè)是沒有明確范圍的外部LOD,另一個(gè)是具有near和far范圍的內(nèi)部LOD節(jié)點(diǎn)。內(nèi)部節(jié)點(diǎn)能按建筑物與攝像機(jī)的距離調(diào)整層次,外部"自適應(yīng)LOD"節(jié)點(diǎn)允許瀏覽器調(diào)整必要的多個(gè)建筑物以趕上場(chǎng)景的動(dòng)態(tài)變化。

(4) 碰撞檢測(cè)要花費(fèi)大量的處理時(shí)間,為提高對(duì)復(fù)雜物體的碰撞檢測(cè)速度,可在Collision節(jié)點(diǎn)的proxy(替身)域指定某一更為簡(jiǎn)單的幾何體作為該形體的替身,它與被替代的原形體占用大致相同的空間。這樣,可大大減少檢測(cè)時(shí)間。

3. 結(jié)束語(yǔ)
以上介紹了虛擬城市的基本原理和制作技巧,對(duì)于進(jìn)行其他領(lǐng)域的虛擬現(xiàn)實(shí)應(yīng)用制作同樣有效,僅為場(chǎng)景中實(shí)體的不同。用VRML制作虛擬現(xiàn)實(shí)入門容易,但要達(dá)到很高的視覺效果和運(yùn)行速度并非易事,須對(duì)VRML和圖形學(xué)進(jìn)行深入了解才可勝任。我們用它制作了虛擬校園,其運(yùn)行效果較為滿意?梢韵嘈牛S著VRML的不斷發(fā)展,我們將可用它制作出功能更加強(qiáng)大的虛擬現(xiàn)實(shí)應(yīng)用。

參考文獻(xiàn):

[1] 黃鐵軍,柳健. VRML國(guó)際標(biāo)準(zhǔn)與應(yīng)用指南. 電子工業(yè)出版社

[2] 施演,周葆芳,趙志勇. VRML2.0使用速成. 清華大學(xué)出版社


【虛擬城市的開發(fā)技術(shù)探討】相關(guān)文章:

虛擬城市的開發(fā)技術(shù)探討08-06

基于DLL的虛擬儀器系統(tǒng)開發(fā)08-06

VXI總線與虛擬儀器技術(shù)08-06

城市換乘樞紐交通組織方法探討08-06

基于虛擬扇區(qū)的Flash存儲(chǔ)管理技術(shù)08-06

給排水專業(yè)CAD軟件開發(fā)方法探討08-06

給排水專業(yè)CAD軟件開發(fā)方法探討08-06

圖形化開發(fā)平臺(tái)在虛擬儀器中的應(yīng)用08-06

從虛擬勞動(dòng)到虛擬經(jīng)濟(jì)08-05