郭俊杰,江獻(xiàn)棟,高 俊(.捷溫汽車系統(tǒng)(中國(guó))有限公司;.廊坊科森電器有限公司,河北 廊坊 065000)
虛擬現(xiàn)實(shí)系統(tǒng)與復(fù)雜模型實(shí)現(xiàn)動(dòng)態(tài)交互的研究
郭俊杰1,江獻(xiàn)棟2,高俊2
(1.捷溫汽車系統(tǒng)(中國(guó))有限公司;2.廊坊科森電器有限公司,河北廊坊065000)
摘要:虛擬現(xiàn)實(shí)技術(shù)是一門涉及眾多學(xué)科的新型技術(shù)。本文從虛擬現(xiàn)實(shí)入手,介紹了復(fù)雜三維模型的構(gòu)建和讀取的方式,并以virtools為平臺(tái)闡述了對(duì)復(fù)雜模型的處理以及整體模型與虛擬環(huán)境實(shí)現(xiàn)交互的方法,最后以實(shí)例的形式介紹了3DMAX中建立的模型讀取數(shù)據(jù)和交互平臺(tái)的實(shí)現(xiàn),給出了由virtools軟件開發(fā)出來的平移旋轉(zhuǎn)交互模塊,為以后虛擬現(xiàn)實(shí)系統(tǒng)的開發(fā)做了鋪墊。
關(guān)鍵詞:虛擬現(xiàn)實(shí)(virtualreality),動(dòng)態(tài)交互(dynamicinteractive),virtools,模型構(gòu)建
分布式虛擬現(xiàn)實(shí)系統(tǒng)的應(yīng)用前景;介紹virtool工具的使用
隨著科學(xué)技術(shù)的發(fā)展,人們對(duì)現(xiàn)實(shí)的認(rèn)識(shí)和處理信息,已不在是通過一個(gè)單維的數(shù)字化信息或者二維平面空間,而是通過建立一個(gè)三維甚至多維化傳感式空間,即包括人的視覺、聽覺、觸覺等感性和理性認(rèn)識(shí)在內(nèi)的信息化集成環(huán)境,而虛擬現(xiàn)實(shí)技術(shù)將是實(shí)現(xiàn)這個(gè)多維信息空間的重要手段。
此項(xiàng)技術(shù)是1990年,在美國(guó)達(dá)拉斯召開的Siggraph會(huì)議上提出的,它的主要內(nèi)容是:實(shí)時(shí)三維圖形生成技術(shù)、多傳感器交互測(cè)試,及高分辨率實(shí)現(xiàn)等。虛擬現(xiàn)實(shí)技術(shù)是利用計(jì)算機(jī)生成仿真的三維虛擬場(chǎng)景,并可以通過使用傳感器進(jìn)行交互控制的技術(shù)。虛擬現(xiàn)實(shí)世界,最重要的特點(diǎn)就是“逼真”感與“交互”性。
Virtools是由法國(guó)某交互三維公司開發(fā),其特點(diǎn)是方便易用,應(yīng)用領(lǐng)域廣,并在3D互動(dòng)展示方面有強(qiáng)大的技術(shù)。它有很完善的構(gòu)成:應(yīng)用程序、動(dòng)作和渲染引擎、軟件開發(fā)工具包(SDK)等。其開放的架構(gòu),極其的靈活,使開發(fā)者方便有效地實(shí)現(xiàn)對(duì)象的交互設(shè)計(jì)和管理。
三維模型的構(gòu)建是整個(gè)系統(tǒng)的重要基礎(chǔ),其好壞是影響運(yùn)行的效果和場(chǎng)景的逼真度的關(guān)鍵。
在虛擬現(xiàn)實(shí)環(huán)境中,首先應(yīng)該是模型的構(gòu)建,因?yàn)関irtools無建模的功能,故一般建模方法是使用常用建模軟件(如3DMAX、solidworks等)來實(shí)現(xiàn),其轉(zhuǎn)換過程如圖1所示。
三維模型的構(gòu)建是通過幾何建模方式,對(duì)象的輪廓和形狀可以用點(diǎn)、直線、多邊形、曲線或者曲線方程等方法表示。在建模時(shí),為了更加快速流暢的模擬,盡量少的使用模型數(shù)據(jù)量,主要通過二維轉(zhuǎn)三維,三維轉(zhuǎn)多邊形等多種方法進(jìn)行構(gòu)建,最后以較小的數(shù)據(jù)量完成了建模和數(shù)據(jù)的導(dǎo)入。
隨著計(jì)算能力的提高,對(duì)復(fù)雜機(jī)械系統(tǒng)運(yùn)動(dòng)模型的高效創(chuàng)建和仿真已成為現(xiàn)實(shí)。
在虛擬場(chǎng)景中模擬現(xiàn)實(shí)中的動(dòng)態(tài)情況,必須具備兩個(gè)要素:時(shí)間控制和動(dòng)態(tài)過程的描述。在virtoolsdev交互引擎中,提供動(dòng)態(tài)過程的描述是通過對(duì)應(yīng)模型的節(jié)點(diǎn)控制實(shí)現(xiàn)的,時(shí)間控制的描述由3D Layout(實(shí)時(shí)3D編輯器)來顯示Realtime3D實(shí)時(shí)場(chǎng)景的內(nèi)容。
virtools中三維模型的控制是靠?jī)?nèi)置行為模塊實(shí)現(xiàn)的。通過這些模塊對(duì)模型進(jìn)行各種基本操作,還可以通過編程開發(fā)軟件(如Visual c++)手動(dòng)編寫操縱模塊,更加靈活的實(shí)現(xiàn)模型的動(dòng)態(tài)仿真。
4.1三維模型構(gòu)造
3DMax中,模型的存儲(chǔ)格式是一種專用格式,通過ASE(3D StudioMaxAsciiExportFormat)格式存儲(chǔ)三維實(shí)體,通過一系列三角形面形成了網(wǎng)格物體,其描述實(shí)體的格式和定義如下。
在3dmax中,可以根據(jù)網(wǎng)格數(shù)據(jù)可以在程序中實(shí)現(xiàn)重載建模,其幾何網(wǎng)格信息如下:
{頂點(diǎn)數(shù);實(shí)體的三角形面數(shù);頂點(diǎn)列表{X,Y,Z坐標(biāo)值};三角形列表{A,B,C索引值};面法向列表{X,Y,Z向量值}};
材質(zhì)可通過物體表面對(duì)光的反射特性體現(xiàn)出來,所以材質(zhì)能較真實(shí)的反映現(xiàn)實(shí)物體,通過材質(zhì)列表給出物體的漫反射特性、鏡面光特性、貼圖等信息,其數(shù)據(jù)個(gè)數(shù)如下:
材質(zhì)列表:{材質(zhì)數(shù);材質(zhì)信息{材質(zhì)名稱;材質(zhì)類型;環(huán)境光;漫反射光;鏡面光;材質(zhì)貼圖}}
在三維模型構(gòu)建過程中,需要注意局部坐標(biāo)的設(shè)定,3DMAX中使用的是右手坐標(biāo)系,virtools中使用左手坐標(biāo)系,并且設(shè)定好的坐標(biāo)系在virtools中不能改變。
4.2動(dòng)態(tài)交互的編制及實(shí)現(xiàn)
(1)首先把建立好的模型通過接口程序轉(zhuǎn)換成virtool所識(shí)別的格式(*.vom),以character的形式導(dǎo)入到virtool的平臺(tái)中;
(2)設(shè)置交互場(chǎng)景,添加場(chǎng)景信息、場(chǎng)景相機(jī)、場(chǎng)景燈光等元素;
(3)增加模型的交互模塊(buildingblock),(4)效果展示,并打包。
4.3功能實(shí)現(xiàn)
本文在Virtools平臺(tái)上開發(fā)出了鼠標(biāo)與三維實(shí)體的交互方式,通過鼠標(biāo)控制場(chǎng)景的視角,完成與整體場(chǎng)景的交互,下面是利用鼠標(biāo)控制實(shí)體模型平移旋轉(zhuǎn)的模塊如圖2。
本文的目的是將復(fù)雜造型的實(shí)體模型在計(jì)算機(jī)上進(jìn)行仿真試驗(yàn),在virtools平臺(tái)上實(shí)現(xiàn)復(fù)雜模型與虛擬現(xiàn)實(shí)環(huán)境的無縫結(jié)合,使產(chǎn)品的表現(xiàn)方式更加美觀、流暢。該方法具有很高真實(shí)性、交互性,簡(jiǎn)單和易實(shí)現(xiàn)等特點(diǎn)。
作者簡(jiǎn)介:郭俊杰(1982—),男,河北廊坊人,本科,研究方向:機(jī)械設(shè)計(jì)及軟件仿真。