徐東海
(唐山市廣播電視大學(xué),河北 唐山063000)
隨著計(jì)算機(jī)軟硬件技術(shù)、人工智能、傳感技術(shù)和多媒體等技術(shù)的發(fā)展,虛擬現(xiàn)實(shí)技術(shù)因其沉浸性、交互性和想象性受到廣泛關(guān)注和應(yīng)用。目前虛擬現(xiàn)實(shí)技術(shù)應(yīng)用場(chǎng)景主要是游戲、娛樂和各種模擬實(shí)驗(yàn)中。虛擬現(xiàn)實(shí)技術(shù)實(shí)現(xiàn)的是將現(xiàn)實(shí)虛擬,再將虛擬仿真,最終在人機(jī)交互中得到聽、視、觸等直觀感受。VR 實(shí)現(xiàn)的是真實(shí)世界和虛擬景象同時(shí)展現(xiàn)出來[1]。
虛擬現(xiàn)實(shí)技術(shù)在國外發(fā)展較早,起初是美國飛行員進(jìn)行飛行訓(xùn)練的系統(tǒng),后來逐漸民用商業(yè)化。近年來,虛擬現(xiàn)實(shí)技術(shù)在國內(nèi)發(fā)展也是突飛猛進(jìn),各大高校和科研機(jī)構(gòu)都在從事相關(guān)研究。如北航的分布式飛行模擬和浙江大學(xué)在建筑工程方面的虛擬實(shí)驗(yàn)環(huán)境都是非常成功的,哈爾濱工業(yè)大學(xué)在人工智能和虛擬現(xiàn)實(shí)相交互方面取得很大的進(jìn)展。國家開放大學(xué)的互聯(lián)網(wǎng)游戲引擎在實(shí)驗(yàn)?zāi)J椒矫嫱黄屏巳藱C(jī)交互的瓶頸[2]。
2.1 虛擬現(xiàn)實(shí)的定義。虛擬現(xiàn)實(shí)技術(shù)(VR)是多媒體技術(shù)的終極形式,是計(jì)算機(jī)軟硬件,傳感器技術(shù),人工智能技術(shù)相結(jié)合的一種計(jì)算機(jī)技術(shù),通過模擬現(xiàn)實(shí)環(huán)境構(gòu)建起來的虛擬場(chǎng)景,用戶通過外設(shè)和系統(tǒng)交互的時(shí)候,身臨其境,從視覺、聽覺、觸覺等方面感知。虛擬現(xiàn)實(shí)技術(shù)有三大特性:沉浸性(身臨其境)、交互性(提升體驗(yàn)感)、構(gòu)想性(特色定制)。
2.2 虛擬現(xiàn)實(shí)技術(shù)分類。(1)沉浸虛擬現(xiàn)實(shí)技術(shù)。沉浸式虛擬現(xiàn)實(shí)技術(shù)主要體現(xiàn)在“身臨其境”,沉浸式采用多媒體、仿真、增強(qiáng)現(xiàn)實(shí)等技術(shù)模擬現(xiàn)實(shí)環(huán)境[3]。用戶通過外設(shè)注入頭盔式顯示器或者VR眼鏡將用戶完全封閉起來,能夠達(dá)到最好的融入環(huán)境效果。在頭盔和VR 眼鏡的輔助下,用戶能夠360°觀察環(huán)境,通過移動(dòng)或轉(zhuǎn)動(dòng)身體能夠觀察到設(shè)備中建模的虛擬物體。缺點(diǎn)就是對(duì)設(shè)備要求高,投資大。(2)桌面式的虛擬技術(shù)。桌面式虛擬技術(shù)也叫靜態(tài)圖像虛擬技術(shù)。通過計(jì)算機(jī)投影或者投屏等形式,將多個(gè)不同位置的圖像有機(jī)地聯(lián)系起來,用戶通過觀察屏幕,通過鍵盤鼠標(biāo)等外設(shè)對(duì)圖像或者3D圖形進(jìn)行操作,可以根據(jù)建模的定義對(duì)屏幕虛擬的物體進(jìn)行旋轉(zhuǎn)、前進(jìn)后退,打開關(guān)閉等操作。這種技術(shù)的缺點(diǎn)是不能身臨其境;優(yōu)點(diǎn)是設(shè)備簡(jiǎn)單,效果好。(3)增強(qiáng)現(xiàn)實(shí)技術(shù)。增強(qiáng)現(xiàn)實(shí)技術(shù)是指在虛擬現(xiàn)實(shí)的基礎(chǔ)上對(duì)實(shí)際的物體進(jìn)行操作。它是一種虛擬和真實(shí)相結(jié)合的模式,它的虛擬模式能夠支持實(shí)際環(huán)境,并通過操作終端控制現(xiàn)實(shí)環(huán)境的目的,實(shí)際上是一種將虛擬對(duì)象疊加在實(shí)際物體上,并在虛擬設(shè)備上對(duì)其真實(shí)物品進(jìn)行解析和該物品工作的簡(jiǎn)單動(dòng)畫。比如我們的實(shí)驗(yàn)環(huán)境中的高爐點(diǎn)火操作,在虛擬建模時(shí),對(duì)高爐點(diǎn)火裝置進(jìn)行了詳細(xì)的描述和說明,在操作中,用戶使用的是虛擬高爐,但是通過控制器可以對(duì)真實(shí)的高爐進(jìn)行點(diǎn)火。(4)分布式網(wǎng)絡(luò)虛擬技術(shù)。分布式網(wǎng)絡(luò)虛擬技術(shù)是依托桌面式虛擬技術(shù)或者沉浸式虛擬技術(shù)的基礎(chǔ)上,通過網(wǎng)絡(luò)使不同的人都能使用或者參與進(jìn)來。分布式網(wǎng)絡(luò)沉浸式虛擬技術(shù)可以實(shí)現(xiàn)不同區(qū)域高度協(xié)調(diào)工作,例如虛擬會(huì)議、虛擬戰(zhàn)爭(zhēng)環(huán)境等;分布式網(wǎng)絡(luò)桌面虛擬技術(shù)可以將資源整合起來,網(wǎng)絡(luò)上任何位置的人都能對(duì)現(xiàn)有的遠(yuǎn)程實(shí)驗(yàn)環(huán)境進(jìn)行遠(yuǎn)程模擬操作,用戶只需要?jiǎng)觿?dòng)鼠標(biāo)鍵盤,就可以在實(shí)驗(yàn)環(huán)境中對(duì)模擬的物體進(jìn)行拖拽、推動(dòng)、旋轉(zhuǎn)等操作,隨時(shí)隨地完成電大的實(shí)驗(yàn)課程和實(shí)訓(xùn)課程。
3.1 虛擬現(xiàn)實(shí)技術(shù)的實(shí)體建模。虛擬現(xiàn)實(shí)技術(shù)的三維建模主要涉及的是幾何建模、紋理處理和環(huán)境渲染等方面。三維建模的軟件主要包括3DMax、Unity3D等。
3DMax毋庸置疑是現(xiàn)在使用最多的三維動(dòng)畫和虛擬現(xiàn)實(shí)建模的軟件。它繼承了三維建模、動(dòng)畫設(shè)置和渲染于一體,它在3D 和2D等方面表現(xiàn)突出;3DMax對(duì)機(jī)器的要求并不高,普通電腦就可以運(yùn)行;最重要的一點(diǎn)是簡(jiǎn)單易學(xué);支持WEB 3D的應(yīng)用。Unity3D也是一款三維建模、虛擬場(chǎng)景、3D、2D等功能齊全的軟件[4]。它的編程語言是C#和JAVA,學(xué)習(xí)過這兩種語言的人可以用Unity3D在短時(shí)間內(nèi)開發(fā)出優(yōu)質(zhì)的產(chǎn)品。它的特點(diǎn)就是交互性,可以實(shí)現(xiàn)建筑的可視化,并且支持多平臺(tái)的遷移。
3.2 虛擬場(chǎng)景與虛擬物體的建模。在虛擬現(xiàn)實(shí)實(shí)驗(yàn)室建模的過程中,需要建模的主要是虛擬實(shí)驗(yàn)室、虛擬實(shí)驗(yàn)設(shè)備、虛擬實(shí)驗(yàn)器材等。我們這里主要是采用3DMax 完成復(fù)雜物體建模和使用Unity3D建立繼承關(guān)系的模型的混合建模模式[5]。
3.2.1 模型創(chuàng)建。本文電大的實(shí)驗(yàn)環(huán)境主要采用的是3DMax和Unity3D混合建模。一個(gè)優(yōu)秀的虛擬環(huán)境可以使用戶完美的融入進(jìn)去,有更好的體驗(yàn)感。在采用虛擬現(xiàn)實(shí)技術(shù)的云平臺(tái)開發(fā)的建模過程中,虛擬實(shí)驗(yàn)室和虛擬設(shè)備都是非常關(guān)鍵的部分,這就要求在建模過程中使用適當(dāng)?shù)慕\浖M(jìn)行建模,并且能夠在2D和3D之間恰當(dāng)?shù)慕M合,圖形拼接的時(shí)候要做到細(xì)膩,精確,不能出現(xiàn)粗糙的多邊形。三維建模基本上的流程為(以虛擬實(shí)驗(yàn)室為例):(1)實(shí)驗(yàn)室墻體建立:墻體模型建立主要是光照、紋理、多邊形簡(jiǎn)化,遮擋剔除以及碰撞檢測(cè)技術(shù),防止人物穿墻。(2)墻體外型建模:不同的物體建模外型不一樣,對(duì)復(fù)雜物體建模更應(yīng)該具體問題具體分析,有的位置是多邊形而個(gè)別地方為橢圓等曲面這就需要用帶非同一有理B樣條。(3)材質(zhì)的選擇:我們?cè)趯?duì)虛擬物體進(jìn)行建模時(shí),不光是外型需要和真實(shí)物體一致,還需要材質(zhì)也要接近。這就需要用到大量的紋理素材以及光線等參數(shù)的調(diào)節(jié)。(4)模型的導(dǎo)出:導(dǎo)出模型前需要進(jìn)行檢查,檢查材質(zhì)和實(shí)物的對(duì)應(yīng)關(guān)系,同材質(zhì)的物體組合之后的總面數(shù)不能超過62K,全都無誤后才可以導(dǎo)出,格式fbx。
3.2.2 解決關(guān)鍵技術(shù)。(1)場(chǎng)景建模。虛擬實(shí)驗(yàn)環(huán)境包括實(shí)驗(yàn)室、器材、各種線路,因此對(duì)物體的逼真度和細(xì)膩程度做了要求。采用3DMax和Unity3D軟件對(duì)現(xiàn)實(shí)環(huán)境進(jìn)行1:1 建模。(2)實(shí)驗(yàn)?zāi)_本。虛擬現(xiàn)實(shí)實(shí)驗(yàn)室的用途就是和用戶的交互性,每個(gè)實(shí)驗(yàn)?zāi)_本的輸入和輸出能不能準(zhǔn)確的執(zhí)行是整個(gè)虛擬實(shí)驗(yàn)環(huán)境開發(fā)的關(guān)鍵。Unity3D內(nèi)置了mono腳本編輯器,該腳本編輯器支持Java 和C#,開發(fā)者可以使用自己熟悉的變成語言。(3)動(dòng)畫制作。動(dòng)畫以其生動(dòng)形象的直觀表達(dá)作為虛擬現(xiàn)實(shí)實(shí)驗(yàn)室的靈魂。選擇好的動(dòng)畫制作軟件至關(guān)重要。常用的方法是采用專業(yè)的建模軟件、專業(yè)的動(dòng)畫系統(tǒng)相結(jié)合的方式制作高質(zhì)量的動(dòng)畫。
4.1 硬件基礎(chǔ)。開發(fā)環(huán)境采用的是操作系統(tǒng)windows7 64 位;處理器為inter core i7-4710MQ CPU@2.5GHz;筆記本顯示器;顯卡為英偉達(dá)獨(dú)立顯卡GTX 850M;內(nèi)存8G。
服務(wù)器端安裝windows 系統(tǒng),web 服務(wù)器軟件為Apache,數(shù)據(jù)庫采用的是Mysql 數(shù)據(jù)庫,編譯軟件PHP。由于條件有限,服務(wù)器采用的是單點(diǎn)運(yùn)行,但是網(wǎng)卡采用雙網(wǎng)卡綁定形式,從Apache 軟件層面實(shí)現(xiàn)負(fù)載均衡。在部署軟件后,進(jìn)行多次壓力測(cè)試,主要測(cè)試方面為:短鏈接與長(zhǎng)連接。短鏈接主要測(cè)試鏈接數(shù)量,而長(zhǎng)連接主要測(cè)試在持續(xù)的壓力作用下,多少條用戶連接才會(huì)停止服務(wù)。
4.2 軟件平臺(tái)?,F(xiàn)實(shí)環(huán)境的虛擬實(shí)驗(yàn)環(huán)境和云平臺(tái)的虛擬現(xiàn)實(shí)環(huán)境還是不同的。云平臺(tái)的虛擬現(xiàn)實(shí)環(huán)境主要受網(wǎng)絡(luò)、帶寬、緩存等方面的影響。這時(shí)的主要工作側(cè)重點(diǎn)在:(1)檢查交互腳本和動(dòng)畫的連貫性;(2)系統(tǒng)是否會(huì)出現(xiàn)延遲,一般延遲為多久;(3)實(shí)驗(yàn)環(huán)境的圖片和動(dòng)畫是否顯示正常;(4)控件觸發(fā)的動(dòng)作和信息是否存在偏差。
未來的虛擬現(xiàn)實(shí)技術(shù)必將融合更多的高科技技術(shù),如人工智能、大數(shù)據(jù)技術(shù)、移動(dòng)技術(shù)等,像意念控制物體,神游四海甚至“靈魂出竅”也是可能的。虛擬現(xiàn)實(shí)遠(yuǎn)程實(shí)驗(yàn)環(huán)境的研究對(duì)電大遠(yuǎn)程實(shí)驗(yàn)的意義重大。它改變了電大的傳統(tǒng)實(shí)驗(yàn)理念,演示者變成了導(dǎo)師,用戶變成了主體,被動(dòng)變?yōu)橹鲃?dòng);更加創(chuàng)新,創(chuàng)新不再是口號(hào),而是與時(shí)俱進(jìn),享受高科技;實(shí)驗(yàn)手段多樣化,只要想的到,就能做的到,設(shè)計(jì)者可以根據(jù)用戶需求量身打造實(shí)驗(yàn)環(huán)境,而不受現(xiàn)實(shí)條件的制約。