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

?

基于VIRTOOLS的虛擬校園開發(fā)研究

2017-04-14 09:47李一晴王慶翠
中國教育信息化·高教職教 2017年2期
關(guān)鍵詞:數(shù)字化校園虛擬現(xiàn)實

李一晴++王慶翠

摘 要:借助虛擬校園可以方便、直觀地了解學(xué)校相關(guān)信息,因此,虛擬校園是數(shù)字化校園建設(shè)的重要組成部分。文章介紹了虛擬校園開發(fā)所涉及的三維模型素材制作的一般方法和技巧,給出了在virtools平臺下交互漫游控制和交互式信息展示的邏輯實現(xiàn)方法。采用文章介紹的方法開發(fā)的某中學(xué)完整的虛擬校園系統(tǒng)畫面逼真,可通過網(wǎng)絡(luò)流暢運行。

關(guān)鍵詞:虛擬校園;虛擬現(xiàn)實;數(shù)字化校園;virtools

中圖分類號:G40-057 文獻標(biāo)志碼:A 文章編號:1673-8454(2017)03-0094-03

一、概述

虛擬校園是借助虛擬現(xiàn)實技術(shù),通過三維圖形真實地再現(xiàn)校園的建筑規(guī)劃、部門分布等情況。三維虛擬校園最大的特點是具有較好的沉浸性、交互性和較強的視覺真實感。[1]借助虛擬校園可以足不出戶地實現(xiàn)校園內(nèi)自由漫游,全面真實地了解校園的教學(xué)、生活環(huán)境以及軟硬件條件。在圖形顯示的基礎(chǔ)上可以配合語音和文本介紹,用戶通過人機交互可以很方便直觀地獲取校園相關(guān)信息。虛擬校園已成為數(shù)字化校園建設(shè)的一個重要組成部分。在近年來,隨著計算機技術(shù)的發(fā)展和在線學(xué)習(xí)的興起,又賦予了虛擬校園新的內(nèi)涵。虛擬校園的功能不僅僅在于校園瀏覽和信息導(dǎo)航功能,還可以與在線教育相融合,通過模擬真實課堂塑造虛擬學(xué)習(xí)空間,能有效地促進在線學(xué)習(xí)效果。[2][3]

虛擬校園最核心的部分是校園漫游和交互式信息查詢功能。校園漫游使用戶能通過簡單的交互操作在校園里任意行走;而交互式信息查詢功能使用戶能夠有選擇地查詢相關(guān)信息,如用戶利用鼠標(biāo)選擇物體對象,系統(tǒng)則通過語音、文本或視頻對其進行介紹??捎糜陂_發(fā)虛擬校園的虛擬現(xiàn)實工具有很多,如Virtools、Unity3D、Quest3D、VRP等。此外,一些三維游戲引擎也可以用來制作虛擬校園,我們利用Virtools開發(fā)了山東省實驗中學(xué)西校區(qū)的虛擬校園。本文將基于Virtools平臺,介紹虛擬校園制作中的場景構(gòu)建、漫游控制以及交互式信息查詢功能的一般實現(xiàn)方法。

二、Virtools簡介

Virtools是法國達索(Dassault system)公司開發(fā)的一款虛擬現(xiàn)實和游戲引擎,也是最早的應(yīng)用最廣泛的虛擬現(xiàn)實開發(fā)平臺。目前已被廣泛應(yīng)用到游戲開發(fā)、工業(yè)仿真、場景展示和教育訓(xùn)練等領(lǐng)域。上海的網(wǎng)上世博會就是達索中標(biāo)并開發(fā)的。Virtools 有如下幾個特點:

(1)采用可視化編程。將完成某個功能的程序段封裝成獨立的功能模塊(Building Block,簡稱BB),每一個BB用一個方形圖標(biāo)來表示。在編輯作品時,只需要根據(jù)程序的執(zhí)行邏輯將不同的功能模塊連接起來即可。這種可視化的編程方法極大地降低了對程序設(shè)計能力的要求,一般的美工也可以學(xué)會。

(2)功能強大齊全。Virtools 本身給開發(fā)者提供了用戶可直接使用的功能強大的程序模塊,包括運動控制、物理模擬、角色控制、實時渲染以及人工智能等。同時支持各類虛擬現(xiàn)實硬件設(shè)備和各種形式的立體顯示。

(3)可擴展性。除了采用系統(tǒng)提供的BB之外,開發(fā)者可利用Virtools提供的腳本語言編程生成新的BB,也可以利用其提供的SDK編程實現(xiàn)更復(fù)雜的BB程序、管理程序、播放程序和渲染程序等。給開發(fā)者提供極大的靈活性。

Virtools是一個完整的虛擬現(xiàn)實整合開發(fā)平臺,但并不包含三維建模功能。三維模型素材需要借助其他三維軟件來構(gòu)建。相關(guān)的Virtools使用說明請參閱其使用手冊。[4]虛擬校園開發(fā)使用的程序模塊并不多,主要使用了交互控制、碰撞檢測、聲音播放和文本顯示等BB。 本文將從場景制作、漫游功能的實現(xiàn)、信息查詢和顯示等方面介紹虛擬校園的制作方法。

三、場景構(gòu)建

Virtools中使用的模型、紋理等素材采用專門的文件編碼格式,利用其他軟件制作的素材需要統(tǒng)一轉(zhuǎn)換為Virtools 的專有文件格式,文件名為*.NMO。Virtools為3Dsmax、Maya等三維軟件提供了文件導(dǎo)出插件。三維素材的制作可利用這些三維軟件進行建模,然后將三維模型導(dǎo)出為NMO格式的文件。NMO文件可以包括三維模型數(shù)據(jù)、材質(zhì)數(shù)據(jù)、動畫數(shù)據(jù)、紋理、角色骨骼等。我們以3DsMax為例來介紹Virtools三維場景的構(gòu)建方法。

1.紋理烘焙與頂點著色

虛擬校園最基本的一個要求是能夠?qū)崟r交互,一般渲染速度要達到30FPS以上。加速渲染最直接的辦法是減少場景中的多邊形數(shù)目[5]和光照計算[6]。在多邊形面數(shù)較少的情況下,模型的表面細節(jié)應(yīng)盡量使用紋理來表現(xiàn)。3dsmax提供了紋理烘焙功能,采用紋理烘焙的作用主要有兩個:一是可以將3dsmax模型上的多個紋理圖片整合成一個,能減少紋理數(shù)目,便于項目的管理,同時減少渲染過程中的CPU負擔(dān);二是可以將燈光、陰影等效果渲染到紋理,然后利用烘焙后的紋理再對模型進行貼圖,這樣我們在Virtools里可以不使用燈光,只需要顯示紋理也可以得到光照效果。在Virtools里的材質(zhì)設(shè)置里,有幾種紋理融合模式(Texture Blend),常用的融合模式是ModulateAlpha、copy和Decalalpha。copy和Decalalpha模式不需要光照就能直接顯示紋理圖案。因為我們在Virtools里不使用任何燈光,所以最后需要Texture Blend設(shè)置為copy或Decalalpha。

三維圖形的渲染一般是通過模型頂點法向、光照法向和觀察方向來計算出每個頂點的顏色值,然后通過插值計算出所有像素的顏色值。頂點著色可以直接指定每個頂點的顏色,從而避免頂點顏色的計算。在3Dsmax中的頂點屬性欄目里可以直接指定頂點顏色。但這種方法需要事先預(yù)測出每個頂點的顏色,而且不能產(chǎn)生遮擋陰影的效果。在虛擬場景的構(gòu)建中,頂點著色一般只用于光照效果比較簡單的模型上(如建筑中的圓形柱子)。采用頂點著色的模型在導(dǎo)入到Virtools中后,必須將模型網(wǎng)格的光照模式設(shè)置為prelit模式,才能正常顯示模型顏色。

總結(jié)起來,三維模型素材的制作過程如圖1所示:

2.植物素材制作

校園中的花草、樹木、草坪等物體形狀非常復(fù)雜,很難采用標(biāo)準(zhǔn)的多邊形模型來表示,即使能夠采用多邊形建模,數(shù)據(jù)量也會非常大,無法達到實時性的要求。對于這類復(fù)雜物體,利用圖像替代模型是一個有效的方法。圖像替代方法的基本原理是將樹木或花草的照片直接顯示在一個平面上,同時利用透明通道將樹木之外的像素變成透明。

圖像替代物可以是單個平面(稱為布告板),也可以是兩個垂直交叉的平面。布告板法是讓圖像平面的方向隨著視點位置的改變而改變,使圖像平面的法線始終指向視點。如圖2a所示,當(dāng)視點從位置1移動到位置2時,圖像平面跟著旋轉(zhuǎn),使用戶看到的圖像始終是一個沒有變形的圖像,這樣就避免了在一側(cè)看到的樹木只是一個平面的現(xiàn)象。但是當(dāng)視點移動時,有時會注明顯地注意到樹木在旋轉(zhuǎn)。十字交叉法使用兩個互相垂直的平面同時顯示一幅樹木圖像,如圖2b所示,這種方法可以避免旋轉(zhuǎn),同時視點在任何位置都能看到完整的樹木圖像。十字交叉法能夠較好地表示樹木、花草,對于整體形狀較規(guī)則而枝葉細小的灌木和草地,可以在規(guī)則的幾何體上直接進行紋理貼圖。

四、動畫演示與交互式漫游

校園漫游要包括動畫演示和交互漫游兩個功能。動畫演示中,采用一個主相機沿既定的路線移動,在移動路線中根據(jù)需要設(shè)置駐留點,在駐留點配合語音、文本或視頻介紹學(xué)校的歷史、文化和軟硬件條件等。交互式漫游通過鍵盤來控制相機移動。因為相機運動中還要考慮碰撞檢測和地板約束問題,而相機不能直接進行碰撞檢測和地板約束,可以創(chuàng)建一個三維虛擬體(3D Frame)作為相機的父對象帶動相機運動,并利用三維虛擬體參與碰撞檢測和地板約束。

1.相機移動

在動畫演示中,設(shè)置若干條相機移動路線,相鄰兩條路線在駐留點處相接。在Virtools中沒有直接提供物體沿曲線運動的BB,可以利用Bezier Progression 和Posutuion On Curve兩個BB來實現(xiàn)相機運動。在Bezier Progression里設(shè)置運動時間和輸出值的變化曲線,將其輸出參數(shù)Progression(輸出值的百分比)傳遞給Position On Curve的輸入?yún)?shù)Progression,Position On Curve利用該值來控制相機在曲線上的位置。圖3示意了動畫演示過程中相機沿曲線運動的BB邏輯圖,圖中Wave Player用于播放語音介紹。

交互式漫游中,以鍵盤或鼠標(biāo)來控制相機移動,利用Key Event檢測某個鍵盤是否按下,用Translate 和Rotate 來移動和旋轉(zhuǎn)相機。圖4是鍵盤控制相機運動的BB邏輯圖,圖中的Object Keep On Floor是用于地板約束的BB,Object Slider為碰撞檢測。

2.導(dǎo)航圖顯示

在漫游過程中,導(dǎo)航圖的作用是在校園的平面示意圖上顯示當(dāng)前用戶所在的位置。導(dǎo)航平面圖和當(dāng)前位置的指示箭頭利用2D Frame來顯示。位置箭頭要隨著相機的運動而移動,這需要得到當(dāng)前相機在世界坐標(biāo)系XY平面上的坐標(biāo),然后將該坐標(biāo)變換到平面圖的2D Frame內(nèi)的坐標(biāo)位置。變換方法是:

xp=,yp=

其中(xp,yp)是當(dāng)前位置相對于平面圖2D Frame的坐標(biāo),(minx,miny)是平面圖表示的校園場景在三維空間中的最小的(x,y)坐標(biāo);width和height是校園場景在XY平面上的寬度和高度。上述計算除了可利用專門用于各種數(shù)學(xué)與邏輯運算的BB(如Calculator和Op)來完成,也可以利用Virtools提供的參數(shù)操作來實現(xiàn)。指示箭頭的定位則利用Edit 2D Entity 來實現(xiàn)。

五、信息查詢

當(dāng)用戶漫游于校園時,需要有選擇地了解部分教學(xué)設(shè)施的相關(guān)信息,可以利用鼠標(biāo)選擇物體,系統(tǒng)會調(diào)出該物體的信息介紹。在Virtools中,交互式信息查詢的實現(xiàn)過程是:首先根據(jù)用戶鼠標(biāo)點擊選擇對象,然后判斷選擇的對象是什么,最后顯示對應(yīng)選擇物體的文本或語音介紹。

圖中,2D Picking用于檢測鼠標(biāo)選擇的物體,Test用于判斷當(dāng)前選擇的物體是不是某個特定的物體,如果是,則利用Show來顯示該物體的文本介紹,并利用Wave Player播放該物體的語音介紹;如果不是則繼續(xù)判斷是否為其他物體。由于Virtools不支持中文顯示,在顯示文本時,需要將文字制作成圖片,然后作為紋理貼圖到2D Frame,顯示2D Frame即可顯示文本。

六、總結(jié)

在我們開發(fā)的山東省實驗中學(xué)西校區(qū)虛擬校園系統(tǒng)中,三維模型共有多邊形面片39137個,紋理圖像64M,聲音與視頻有43M。該系統(tǒng)在4M網(wǎng)絡(luò)環(huán)境下和一般低端配置的筆記本電腦上能流暢運行,幀率均達到40FPS以上。

本文總結(jié)了虛擬校園核心模塊的一般設(shè)計和制作方法。在不同的制作平臺上,實現(xiàn)的方法和技巧也有所不同,本文基于Virtools和3D Max,從場景素材制作、動畫展示、交互式漫游控制和信息查詢等方面給出了虛擬校園的一般實現(xiàn)方法和制作技巧。希望對數(shù)字化校園設(shè)計者和開發(fā)者有所啟發(fā)。

參考文獻:

[1]胡小強,虛擬現(xiàn)實技術(shù)基礎(chǔ)與應(yīng)用[M]. 北京:北京郵電大學(xué)出版社,2009.2.

[2]韓慶年.國外高校3D虛擬校園設(shè)計與應(yīng)用述評[J].中國教育信息化,2012(9):17-21.

[3]李峻峰.虛擬現(xiàn)實技術(shù)與虛擬校園的研究與實踐——以濰坊學(xué)院虛擬校園建設(shè)為例[J].工程圖學(xué)學(xué)報,2011(3): 62-68.

[4]Carthy C M and Callele D. 3DVIA Virtools User Guide[M]. Dassault system, 2006.

[5]喬振華.基于Virtools的虛擬校園漫游系統(tǒng)的研究和實現(xiàn)[D].廣西師范大學(xué),2014.

[6]吳元峰,李大錦.一個煤礦作業(yè)仿真系統(tǒng)的開發(fā)[J].系統(tǒng)仿真學(xué)報,2012(1):184-187.

[7]申小春,謝同祥,黃立冬.基于3DSMax&3DVRI的虛擬校園漫游系統(tǒng)的設(shè)計與實現(xiàn)[J].現(xiàn)代教育技術(shù),2012(10):106-109.

(編輯:王天鵬)

猜你喜歡
數(shù)字化校園虛擬現(xiàn)實
論虛擬現(xiàn)實藝術(shù)的“沉浸”
REALITY BITES
數(shù)字化校園中統(tǒng)一移動平臺的實踐與探索
虛擬現(xiàn)實技術(shù)向科幻小說借靈感
基于防火墻和WAF安全設(shè)備的高校信息安全設(shè)計與應(yīng)用
虛擬現(xiàn)實:另一個真實世界
淺談虛擬現(xiàn)實