[摘要] 對商品的三維網(wǎng)絡模型進行研究,探討了應用VRML建模語言實現(xiàn)在網(wǎng)絡上展示虛擬三維商品的方法,結合實例說明商品三維模型展示的實現(xiàn)步驟。解決了虛擬商品三維展示系統(tǒng)要解決的關鍵問題。
[關鍵詞] 虛擬現(xiàn)實 VRML 三維展示
一、引 言
虛擬商品三維展示系統(tǒng),由服務器端和客戶端組成。服務器端由VRML文件、商品的查詢、管理和發(fā)布構成??蛻舳税╓eb瀏覽器和VRML瀏覽器插件兩部分。用戶通過Web瀏覽器完成網(wǎng)頁中三維商品的查看和操作。在實際開發(fā)中,含有三維模型的VRML文件往往是通過三維設計軟件制作得到。再通過三維軟件的導出功能,將三維模型導出為VRML文件。最后,編寫HTML程序?qū)RML腳本嵌入網(wǎng)頁之中,實現(xiàn)虛擬商品的發(fā)布。
二、虛擬商品的代碼處理
1.用戶視點的調(diào)整。打開三維軟件導出的VRML文件時,我們發(fā)現(xiàn)眼前一片漆黑或什么都看不到。這是由于用戶距虛擬場景中的物體距離太近的緣故,需要調(diào)整觀察者的視角。在VRML程序的前面,添加如下代碼可得到解決:
Viewpoint {
position0.0 0.0 500.0# 修改視點的位置
}
其中,position域的域值用于設置觀察視點在VRML場景中的空間位置,由一個X、Y、Z的三維坐標確定。在此,我們希望拉遠與虛擬場景中商品模型的距離,則加大Z軸的值。比如,將Z的默認值由10改為500。
2.模型材質(zhì)的創(chuàng)建。對于導出的VRML文件,還會出現(xiàn)三維模型的材質(zhì)紋理丟失的情況。這就需要對虛擬場景中的商品模型的紋理重新進行創(chuàng)建。VRML紋理映射使用Appearance節(jié)點的texture域或textureTransform域,對于復雜造型還可使用TextureCoordinate節(jié)點進行精確紋理映射,后者具有紋理坐標系變換功能。
例如,對于一個三維廣告牌模型,在VRML中為其添加圖像紋理如下。
Shape {
appearanceAppearance{
textureImageTexture{# 模型貼圖
url [“Guangao.jpg”]
}
}
geometry Box { # 廣告牌模型
size 3.0 4.0 0.04
}
}
3.多場景模型的組合。對于一個復雜的造型,往往將其分割成多個模型,再組合而成。即,建立獨立的場景造型文件,然后用VRML的內(nèi)聯(lián)節(jié)點將其融合,從而簡化復雜造型的設計與調(diào)試,便于維護和多人開發(fā)。
例如,某臺燈模型由3個場景文件組成,主場景文件為lamp.wrl,燈罩場景文件為lamp-chimney.wrl,燈架場景文件為lamp-support.wrl。
燈罩場景文件關鍵代碼如下:
Shape {
appearance Appearance {
textureImageTexture {# 燈罩貼圖
url“tietu1.jpg”
}
}
geometry Extrusion { # 燈罩模型
crossSection [
1.00.0
0.924-0.383… …]… …
}
}
燈架場景文件關鍵代碼如下:
Shape {
appearance Appearance {
textureImageTexture {# 燈架貼圖
url“tietu2.jpg”
}
}
geometry Extrusion {# 燈架模型
crossSection [
1.00.0
0.924-0.383… …
]… …
}
}
主架場景文件關鍵代碼如下:
Transform {
translation0.0 1.3 0.0
children [
Inline {# 引入燈罩模型
url“l(fā)amp-chimney.wrl”
}
]
}
Transform {
translation0.0 -1.3 0.0
children [
Inline {# 引入燈架模型
url“l(fā)amp-support.wrl”
}
]
}
在VRML瀏覽器中得到的最終結果如下圖所示。
三、虛擬商品的發(fā)布
VRML嵌入網(wǎng)頁有多種方式。其一,可以在網(wǎng)頁中設置超鏈接,其目標即VRML文件。這種情況下,瀏覽器會為該VRML文件單獨打開一個窗口進行顯示。其二,在網(wǎng)頁中利用HTML語言的embeded元素來嵌入VRML文件。例如,
… …
… …
四、結束語
針對虛擬商品三維展示系統(tǒng)設計的實現(xiàn)進行研究。通過VRML實現(xiàn)用戶在二維網(wǎng)頁中查看三維商品模型。說明了虛擬場景中模型的創(chuàng)建方法,對導出的VRML所存在的問題進行了處理,實現(xiàn)了虛擬三維商品在網(wǎng)絡上的發(fā)布。
參考文獻:
[1]汪志達葉偉:VRML虛擬現(xiàn)實網(wǎng)頁設計[M].北京:清華大學出版社,2006
[2]趙小雨薛海燕:基于VRML的三維網(wǎng)站設計[J].甘肅科技,2008,(3)
[3]http://www.cortona3d.com,[EB/OL]