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

?

基于可編程GPU的計(jì)算機(jī)組裝與維護(hù)虛擬實(shí)訓(xùn)平臺的研究與設(shè)計(jì)

2014-05-17 01:34:28李利正陳蘭生
實(shí)驗(yàn)室研究與探索 2014年3期
關(guān)鍵詞:頂點(diǎn)對象網(wǎng)格

李利正, 陳蘭生

(紹興職業(yè)技術(shù)學(xué)院信息工程學(xué)院,浙江紹興 312000)

0 引言

實(shí)踐教學(xué)在計(jì)算機(jī)專業(yè)的一些實(shí)踐性強(qiáng)的課程中具有重要作用,學(xué)生只有通過實(shí)驗(yàn)操作,才能真正理解和掌握實(shí)驗(yàn)原理與操作技能。高校實(shí)驗(yàn)教學(xué)在改革實(shí)驗(yàn)內(nèi)容的同時(shí),更要求增加設(shè)計(jì)性、綜合性、創(chuàng)造性和選擇性實(shí)驗(yàn)項(xiàng)目[1],建設(shè)設(shè)備先進(jìn)、管理優(yōu)良的實(shí)驗(yàn)室,各高校在提高實(shí)驗(yàn)設(shè)備利用率,增加資金投入和開發(fā)虛擬實(shí)驗(yàn)軟件等方面加大了力度,基于虛擬技術(shù)的具有高交互、強(qiáng)烈沉浸感的智能仿真實(shí)驗(yàn)室成為當(dāng)前的研究熱點(diǎn)[2-3]。以“計(jì)算機(jī)組裝與維護(hù)”課程虛擬實(shí)訓(xùn)室為例,有的提出桌面型虛擬現(xiàn)實(shí),結(jié)構(gòu)簡單,操作簡單,但是缺乏沉浸感、學(xué)生易受環(huán)境干擾,而且不具有開放性,只能在特定環(huán)境下進(jìn)行[4];有的提出使用Flash仿3D設(shè)計(jì),雖能降低研發(fā)成本、加快軟件在網(wǎng)絡(luò)的運(yùn)行速度,但用多角度多層次壓縮拼接真實(shí)圖片而形成的3D仿真軟件存在動態(tài)交互性差,缺乏隨機(jī)應(yīng)變能力與臨場感[5];有基于Virtools的虛擬仿真實(shí)驗(yàn)室,三維沉浸感強(qiáng),人機(jī)交互效果好,并能通過網(wǎng)絡(luò)共享教育資源,但是由于3D計(jì)算耗用CPU資源大,運(yùn)算速度慢[6]。因此本文提出了基于具有可編程、多線程、高強(qiáng)度并行計(jì)算能力的多核圖形處理器GPU[7]的計(jì)算機(jī)組裝與維護(hù)虛擬實(shí)訓(xùn)平臺,以提供學(xué)生不受時(shí)空限制進(jìn)行實(shí)驗(yàn)的反復(fù)模擬練習(xí)。

1 虛擬實(shí)訓(xùn)平臺的構(gòu)架

基于可編程的GPU計(jì)算機(jī)組裝與維護(hù)虛擬實(shí)訓(xùn)平臺具有3D仿真元器件、主機(jī)箱等硬件設(shè)備,能滿足學(xué)生進(jìn)行計(jì)算機(jī)安裝與調(diào)試、硬件故障模擬與排除等實(shí)驗(yàn),通過服務(wù)器端的實(shí)驗(yàn)參數(shù)管理,智能語法庫、技能庫、操作經(jīng)驗(yàn)庫等數(shù)據(jù)的管理,為客戶端的智能交互提供數(shù)據(jù)依據(jù),系統(tǒng)根據(jù)專家智能庫、經(jīng)驗(yàn)庫對學(xué)生實(shí)驗(yàn)操作生成報(bào)告并進(jìn)行分析,最終給出操作評價(jià),系統(tǒng)架構(gòu)如圖1所示。

圖1 虛擬實(shí)訓(xùn)平臺體系結(jié)構(gòu)

系統(tǒng)采用B/S架構(gòu),服務(wù)器端使用PHP語言開發(fā),與數(shù)據(jù)庫進(jìn)行數(shù)據(jù)通信,對客戶端的Http請求,輸出XML格式數(shù)據(jù)進(jìn)行數(shù)據(jù)通信,客戶端利用基于GPU的Stage3D實(shí)現(xiàn)技能訓(xùn)練[8],流程如圖 2所示。Stage3D是Adobe推出的底層3D渲染引擎[9],該引擎能夠調(diào)用電腦顯卡的OpenGL[10],借助GPU強(qiáng)大的運(yùn)算能力提高渲染效率。本系統(tǒng)首先應(yīng)用3Dmax建立主機(jī)箱和各類數(shù)據(jù)線、元器件的靜態(tài)三維模型,建模時(shí)應(yīng)根據(jù)不同材質(zhì)和不同參數(shù)設(shè)置不同的狀態(tài),并導(dǎo)出為md5mesh格式文件作為Stage3D建模文件,通過基于Stage3D的開發(fā)框架Starling設(shè)計(jì)場景、操作對象、特效渲染、交互操作,由于使用GPU硬件加速,在瀏覽器端進(jìn)行實(shí)驗(yàn)操作異常流暢[11]。技能訓(xùn)練模塊與瀏覽器端通過Javascript和XML產(chǎn)生交互,從專家智能庫讀取語法表達(dá)、組裝維護(hù)邏輯和技能經(jīng)驗(yàn)等作為參考,對實(shí)驗(yàn)人員的實(shí)時(shí)操作進(jìn)行分析,產(chǎn)生XML文件格式的實(shí)驗(yàn)分析結(jié)果,以便監(jiān)控評價(jià)模塊調(diào)用并給出成績和分析。

圖2 技能訓(xùn)練流程圖

2 平臺的關(guān)鍵技術(shù)

虛擬實(shí)訓(xùn)平臺的操作設(shè)備是主體,仿真交互是核心。構(gòu)建硬件設(shè)備的三維模型為虛擬交互設(shè)計(jì)提供可操作對象,同時(shí)虛擬交互設(shè)計(jì)時(shí)三維模型實(shí)現(xiàn)動態(tài)操作的必要途徑,服務(wù)器端數(shù)據(jù)的維護(hù)提高了系統(tǒng)的可擴(kuò)展性。虛擬實(shí)訓(xùn)仿真平臺是一個比較復(fù)雜的應(yīng)用項(xiàng)目,本文重點(diǎn)論述三維模型數(shù)據(jù)結(jié)構(gòu)的構(gòu)建以及利用Stage3D技術(shù)實(shí)現(xiàn)三維場景的渲染和非線性實(shí)時(shí)交互設(shè)計(jì)的過程。

2.1 實(shí)體數(shù)據(jù)結(jié)構(gòu)

三維模型數(shù)字表達(dá)依據(jù)幾何結(jié)構(gòu)的不同主要分為規(guī)則網(wǎng)格和不規(guī)則三角形網(wǎng)格[12],其中三角形網(wǎng)格具有較高繪制效率,無論在轉(zhuǎn)換、采樣以及頂點(diǎn)之間都存在很強(qiáng)的規(guī)律性,本文采用三角形網(wǎng)格繪制模型,每個模型頂點(diǎn)狀態(tài)由各頂點(diǎn)位置、顏色和法線確定,表示為[x,y,z,c,nX,nY,nZ]T,計(jì)算前須將頂點(diǎn)以組為單位上載至GPU緩存;為了確定能形成三角形的頂點(diǎn),提煉頂點(diǎn)索引上載至GPU緩存,讓GPU知道頂點(diǎn)渲染順序;GPU中,模型的視圖變換包括平移、縮放和旋轉(zhuǎn),設(shè)平移、縮放、旋轉(zhuǎn)的變換矩陣分別為 P、S、N,則頂點(diǎn)位置向量變換可表示為原頂點(diǎn)位置向量與P、S、N的點(diǎn)積:

平移、縮放變換比較簡單,這里給出旋轉(zhuǎn)變換,設(shè)與x軸、y軸、z軸的夾角分別為θ、φ、γ,則變換矩陣可表示為:

每個頂點(diǎn)的線性變換由VertextShader執(zhí)行計(jì)算,完成一個三維圖像的網(wǎng)格結(jié)構(gòu)。

2.2 攝像機(jī)定位

操作過程中,元件與數(shù)據(jù)線在移動過程中,攝像機(jī)必須實(shí)時(shí)跟蹤,同時(shí)為了能擴(kuò)大視野,本文將攝像機(jī)設(shè)于主機(jī)箱上方,其Up矢量指向下方,如圖3所示,在元件或數(shù)據(jù)線對象移動過程中,通過右手準(zhǔn)則,修改Up矢量,以便始終指向元器件等對象的Dir矢量[13]。并通過引用元件或數(shù)據(jù)線對象的當(dāng)前位置來實(shí)現(xiàn)攝像機(jī)的這一行為,確定元件或數(shù)據(jù)線視主板為相對位置的參考物。

三維模型頂點(diǎn)在世界坐標(biāo)系到透視平面的坐標(biāo)的轉(zhuǎn)換,實(shí)現(xiàn)了三維坐標(biāo)系到二維坐標(biāo)系的坐標(biāo),見圖4?;镜耐敢曂队澳P褪怯梢朁c(diǎn)和視平面,視點(diǎn)可以認(rèn)為是用戶的位置,這里的透視平面可認(rèn)為是電腦屏幕,假定投影中心在Z軸-d處,即觀察者與屏幕的距離,那么模型的一點(diǎn)V(x,y,z)的透視投影V'(x',y',z')的坐標(biāo),根據(jù)相似三角形對應(yīng)邊等比例關(guān)系有:

則轉(zhuǎn)換矩陣的形式如下:

圖3 控制攝像機(jī)的方位

圖4 坐標(biāo)系的轉(zhuǎn)換

2.3 三維模型著色與光照計(jì)算

僅使用網(wǎng)格模型和層級結(jié)構(gòu)信息只能繪制線框網(wǎng)格,為了渲染得到完整的模型,需要對每個頂點(diǎn)進(jìn)行紋理采樣,對模型進(jìn)行片段著色或紋理貼圖渲染。每個頂點(diǎn)顏色使用4個8位段來表示RGB和Alpha,保存在AGAL(Adobe Graphics Assembly Language)寄存器,各頂點(diǎn)的顏色值經(jīng)過線性插值計(jì)算輸出為圖元中各種像素的顏色值[14]。

為了使整個場景有立體感,需要處理好光照與疊交畫面。本文將各種光照信息,如物體頂點(diǎn)、法線、材質(zhì)參數(shù)和材質(zhì)反射顏色存儲到GPU緩存,逐像素遍歷這些信息,計(jì)算光照像素信息。由于紋理只能按照顏色格式存儲,因此處理后的信息將按照RGBA四個通道進(jìn)行保存。為了節(jié)省紋理存儲空間,同時(shí)操作遠(yuǎn)近物體像素的遮擋,GPU用深度緩存頂點(diǎn)深度信息(Depth)和攝像機(jī)的遠(yuǎn)近截面計(jì)算頂點(diǎn)位置信息,如圖5所示。

圖5 頂點(diǎn)位置和深度與紋理存儲關(guān)系

2.4 碰撞設(shè)計(jì)及處理

技能操作時(shí),涉及元器件與插槽和主板的碰撞處理,為了防止硬件穿越虛擬設(shè)備或環(huán)境而出現(xiàn)不合常理的情況,需要通過給主板表面設(shè)置為floor對象,控制元器件的移動。但只是在x與z軸上的2d運(yùn)動,并不能隨著floor對象進(jìn)行y軸上的變化,為了控制元器件調(diào)整角度,垂直插入插槽,在主板表面新增一個對象floor1,floor1為主板去掉其他的控件,僅剩各插槽對象mem_slot,video_slot,audio_slot 等。 設(shè) 置 類RayCollision用于檢測碰撞效果,它的作用相當(dāng)于從器件等對象身上向下射出一道光線,與floor1對象發(fā)生碰撞,得到碰撞點(diǎn)的mesh、法線、位置等信息,這個位置信息用來設(shè)定器件等對象在Y軸上的位置。另外為了避免器件對象在對碰撞做出響應(yīng)時(shí)因?yàn)橐恍┙嵌榷翱ㄋ馈保O(shè)置類ObjectSlider調(diào)節(jié)radius參數(shù)實(shí)現(xiàn)器件對象對碰撞對象的相對滑動,保證操作過程順利完成。

3 系統(tǒng)發(fā)布與測試

本文基于可編程GPU,采用3DMAX進(jìn)行平臺場景、機(jī)箱、元器件建模,采用Stage3D進(jìn)行三維交互設(shè)計(jì)與虛擬實(shí)訓(xùn)平臺的開發(fā)。該平臺用于計(jì)算機(jī)硬件組裝與調(diào)試維護(hù)過程的仿真實(shí)驗(yàn),并可在實(shí)驗(yàn)過程中動態(tài)修改參數(shù)以模擬計(jì)算機(jī)系統(tǒng)不同的故障狀態(tài),給出相應(yīng)的維護(hù)方法,具有高交互性和強(qiáng)烈沉靜感。邊學(xué)邊做的開放式學(xué)習(xí)平臺,激發(fā)了學(xué)生的學(xué)習(xí)動機(jī),可有效提高學(xué)生的動手實(shí)踐能力,并實(shí)現(xiàn)了教學(xué)資源共享,解決了傳統(tǒng)實(shí)驗(yàn)教學(xué)資源不足、設(shè)備陳舊、器件耗損大等問題。

4 結(jié)語

本文針對計(jì)算機(jī)組裝與維護(hù)三維實(shí)驗(yàn)操作模型數(shù)據(jù)計(jì)算量大和運(yùn)算速度慢的問題,提出了基于GPU[15]加速模型繪制、渲染的方法,成功建立了三維交互式計(jì)算機(jī)組裝與維護(hù)實(shí)訓(xùn)平臺,完成了裝機(jī)、故障檢測、維修等過程的仿真和有效的監(jiān)控評價(jià)功能,在構(gòu)建過程中引入智能專家?guī)欤捎肧tage3D和AGAL很好的解決了智能交互過程中信息的實(shí)時(shí)傳遞,而模型數(shù)據(jù)的流化處理更是實(shí)現(xiàn)了虛擬實(shí)訓(xùn)平臺的擴(kuò)充性,具有較高的推廣性,實(shí)用性好。

[1]鄧來勝.基于三網(wǎng)融合建設(shè)高校開放性實(shí)驗(yàn)室的探討[J].電腦與電信,2011(5):47-49.

Deng Lai-sheng.Exploration on“Triple Play”Based Open Labs Construction of University[J].Computer & Telecommunication,2011(5):47-49.

[2]Christoppher D Gerger,Joerg Stoecklein,F(xiàn)lorian Klompmaker,et al.Development of an augmented reality game by extendinga 3D authoring system[J].ACM International Conference Proceedings Series,2007,203:5527-5530.

[3]Sankar Jayaram.Virtual assembly using virtual reality techniques[J].Computer-Aided Design(S0010-4485),1997,29(8):575-584.

[4]李 赟,顧 容.桌面型虛擬現(xiàn)實(shí)技術(shù)在計(jì)算機(jī)硬件組裝訓(xùn)練中的應(yīng)用必要性和可行性論述[J].教師,2009,50(20):101-102.

Li Yun,Gu Rong.The Necessity and Feasibility of Application on the Computer Hardware Assembly Training of Desktop Virtual Reality Technology[J].Teacher,2009,50(20):101-102.

[5]陳尹立,彭詩力.智能虛擬實(shí)驗(yàn)平臺的設(shè)計(jì)與研究——以計(jì)算機(jī)組裝與維修課程為例[J].實(shí)驗(yàn)技術(shù)與管理,2010,27(7):77-79,83.

Chen Yinli,Peng Shili.Design and research of an intelligent virtual experimental platform [J]. Experimental Technology and Management,2012,27(7):77-79,83.

[6]卿立興.計(jì)算機(jī)組裝實(shí)驗(yàn)PCVR系統(tǒng)的構(gòu)建[J].內(nèi)江師范學(xué)院學(xué)報(bào),2010,25(12):49-52.

QING Li-xing.The Construction of Virtual Computer Assembly Experiment System Based on the Virtools[J].Journal of Neijiang Normal University,2010,25(12):49-52.

[7]Yue T X,Chen C F,Li B L.An adaptive method of high accuracy surface modeling and its application to simulating elevation surfaces[J].Transactions in GIS,2010,14(5):615-630.

[8]吳振華.網(wǎng)絡(luò)化高清非編實(shí)驗(yàn)室的建設(shè)[J].實(shí)驗(yàn)室研究與探索,2011,30(9):181-184.

WU Zhen-hua.HD NLE Laboratory Network Construction[J].Research and Exploration in Laboratory,2011,30(9):181-184.

[9]Stage3D介紹[OL].2013.3.http://www.adobe.com/cn/devnet/flashplayer/stage3d.html.

[10]Todd Yard.Foundation ActionScript3.0 Image Effects[M].New York:Apress Media LLC,2009:154-161.

[11]閆長青,岳天祥.GPU加速的高精度數(shù)字地面模型建模方法[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(22):22-27.

YAN Chang-qing,YUE Tian-xiang.GPU accelerated high accuracy surface modeling methods for DEM Modelling[J].Computer Engineering and Application,2012,48(22):22-27.

[12]羅 濤.三維網(wǎng)格模型的多尺度幾何處理算法研究[D].北京:北京大學(xué)信號與信息管理學(xué)院,2012.

[13]陳旭亮.實(shí)時(shí)渲染中3D虛擬攝像機(jī)的研究與應(yīng)用[D].鎮(zhèn)江:江蘇科技大學(xué)模式識別與智能系統(tǒng),2012.

[14]胡 蓉,張東寧,朱栗華.ActionScript 3.0游戲編程(第2版)[M].北京:人民郵電出版社,2012.

[15]李頂峰,孔國梁.基于OpenGL的工程三維仿真系統(tǒng)通用開發(fā)平臺[J].鐵道勘察,2012,38(5):1-5.

LI Ding-feng KONG Guo-liang.Common Development Platform of Engineering 3D Simulation System Based on OpenGL[J].Railway Investigation and Surveying,2012,38(5):1-5.

猜你喜歡
頂點(diǎn)對象網(wǎng)格
神秘來電
睿士(2023年2期)2023-03-02 02:01:09
用全等三角形破解網(wǎng)格題
過非等腰銳角三角形頂點(diǎn)和垂心的圓的性質(zhì)及應(yīng)用(下)
反射的橢圓隨機(jī)偏微分方程的網(wǎng)格逼近
關(guān)于頂點(diǎn)染色的一個猜想
攻略對象的心思好難猜
意林(2018年3期)2018-03-02 15:17:24
重疊網(wǎng)格裝配中的一種改進(jìn)ADT搜索方法
基于熵的快速掃描法的FNEA初始對象的生成方法
基于曲面展開的自由曲面網(wǎng)格劃分
區(qū)間對象族的可鎮(zhèn)定性分析
察雅县| 牡丹江市| 沧源| 栾川县| 湘阴县| 辽宁省| 沿河| 容城县| 宝兴县| 辉南县| 隆子县| 乌兰察布市| 涿州市| 鄂尔多斯市| 楚雄市| 普定县| 雷波县| 甘洛县| 新平| 江津市| 丹阳市| 平乡县| 丹巴县| 东至县| 女性| 宁远县| 清远市| 公主岭市| 布尔津县| 自贡市| 故城县| 隆昌县| 亳州市| 兴义市| 黔东| 黄骅市| 勃利县| 浙江省| 保定市| 明星| 梁平县|