• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      適應(yīng)多平臺(tái)的油田安全作業(yè)仿真培訓(xùn)系統(tǒng)開(kāi)發(fā)

      2015-06-24 23:27:12羅翔趙婭王亮
      電腦知識(shí)與技術(shù) 2015年2期
      關(guān)鍵詞:物體油田動(dòng)畫(huà)

      羅翔 趙婭 王亮

      摘要:該文從尋求適合多平臺(tái)發(fā)布的軟件著手,研究軟件性能、分析系統(tǒng)功能需求、進(jìn)行系統(tǒng)技術(shù)平臺(tái)架構(gòu),研究系統(tǒng)實(shí)現(xiàn)中的關(guān)鍵技術(shù),構(gòu)建三維模型、虛擬角色,實(shí)現(xiàn)人機(jī)交互功能,搭建油田安全作業(yè)仿真培訓(xùn)系統(tǒng),并進(jìn)行適應(yīng)多平臺(tái)的系統(tǒng)發(fā)布。該系統(tǒng)能達(dá)到良好的培訓(xùn)效果,且能有效的幫助油田作業(yè)工熟悉和掌握正確規(guī)范的油田作業(yè)流程,適宜于在油田范圍內(nèi)推廣。

      關(guān)鍵詞:仿真培訓(xùn);Unity 3D;三維建模;人機(jī)交互

      中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)02-0243-03

      Abstract: From seeking the software adapting to multi platforms publishing to start, the paper researches Software performance, analyses the function need of the system, carries out the architecture of technology platforms, studies the key technologies in system developing, constructs 3D models and virtual characters, realizes the function of human-computer interaction, builds the simulation system for training of oil-field safety task operation, publishes the system adapting to multi platforms. The system can achieve good training effect, can help the oil workers grasp the correct operation process, is suitable for promotion in the oil-field range.

      Key words: Simulation training; Unity 3D; 3D modeling; Human-computer interaction

      安全作業(yè)一直是油田的追求目標(biāo),為了增強(qiáng)油田工人作業(yè)操作的準(zhǔn)確性,降低油田作業(yè)風(fēng)險(xiǎn),油田安全作業(yè)培訓(xùn)逐漸被重視并發(fā)展起來(lái),各種油田安全作業(yè)仿真培訓(xùn)系統(tǒng)應(yīng)運(yùn)而生。但這類(lèi)仿真系統(tǒng)多以基于PC機(jī)固定終端并通過(guò)網(wǎng)絡(luò)連接的方式實(shí)現(xiàn),學(xué)習(xí)時(shí)間及培訓(xùn)地點(diǎn)固定,不能提供實(shí)時(shí)便捷的培訓(xùn)。隨著平板電腦和智能手機(jī)的流行,移動(dòng)學(xué)習(xí)開(kāi)始興起,得益于無(wú)時(shí)間地點(diǎn)限制,發(fā)展迅猛[1]。在此背景下,基于移動(dòng)終端的培訓(xùn)軟件開(kāi)始大批量研發(fā)。適應(yīng)不同平臺(tái)的仿真系統(tǒng)開(kāi)發(fā)方式截然不同,開(kāi)發(fā)平臺(tái)之間又存在著激烈的競(jìng)爭(zhēng),給開(kāi)發(fā)者造成了一定的困擾,開(kāi)發(fā)者很難選擇從哪個(gè)平臺(tái)入手開(kāi)發(fā),而把一款軟件從一個(gè)平臺(tái)移植到另一個(gè)平臺(tái)也往往需要很大的工作量。

      基于以上考慮,本文從尋求適合多平臺(tái)發(fā)布的軟件著手,研究軟件性能、分析系統(tǒng)功能需求、進(jìn)行系統(tǒng)技術(shù)平臺(tái)架構(gòu),研究系統(tǒng)實(shí)現(xiàn)中的關(guān)鍵技術(shù),搭建完成油田安全作業(yè)仿真培訓(xùn)系統(tǒng),并進(jìn)行適應(yīng)Android移動(dòng)終端和適應(yīng)Windows固定終端的系統(tǒng)發(fā)布。

      1 系統(tǒng)總體架構(gòu)

      1.1系統(tǒng)功能組成

      對(duì)油田安全作業(yè)仿真培訓(xùn)系統(tǒng)的功能需求進(jìn)行分析,得到系統(tǒng)功能應(yīng)包括:系統(tǒng)數(shù)據(jù)信息下載,培訓(xùn)模塊選擇,用戶登錄,作業(yè)流程培訓(xùn),工具選擇,背景音樂(lè)開(kāi)關(guān),退出系統(tǒng),培訓(xùn)成績(jī)上傳,系統(tǒng)信息維護(hù)等。其具體的功能結(jié)構(gòu)如圖1所示:

      1.2系統(tǒng)技術(shù)平臺(tái)架構(gòu)

      根據(jù)油田安全作業(yè)仿真培訓(xùn)系統(tǒng)的具體功能需求及發(fā)布需求,系統(tǒng)的開(kāi)發(fā)架構(gòu)于以下平臺(tái)之上:Unity 3D游戲引擎,3ds Max三維建模軟件,Photoshop CS圖片處理軟件,Oracle 10g數(shù)據(jù)庫(kù)。

      3ds Max用來(lái)進(jìn)行系統(tǒng)的三維模型構(gòu)建;Photoshop CS進(jìn)行圖片處理以用做三維模型的貼圖,輔助提高三維模型的真實(shí)性;Oracle 10g數(shù)據(jù)庫(kù)用來(lái)存儲(chǔ)系統(tǒng)的用戶信息、作業(yè)流程信息、培訓(xùn)成績(jī)信息等;Unity 3D游戲引擎編程操作三維模型,從而完成油田各個(gè)作業(yè)流程的人機(jī)交互虛擬培訓(xùn)功能。

      系統(tǒng)技術(shù)平臺(tái)架構(gòu)如下:

      2 三維虛擬場(chǎng)景構(gòu)建

      三維虛擬場(chǎng)景構(gòu)建采用的核心技術(shù)是三維建模技術(shù),三維建模技術(shù)是依據(jù)現(xiàn)實(shí)世界中的對(duì)象及其屬性將其轉(zhuǎn)化為機(jī)器世界的數(shù)字化表示[2]。三維虛擬場(chǎng)景構(gòu)建的流程包括:場(chǎng)景相關(guān)資料整理、三維模型構(gòu)建、三維模型美化、三維動(dòng)畫(huà)制作、虛擬場(chǎng)景集成及進(jìn)一步利用紋理貼圖進(jìn)行美化。

      2.1 場(chǎng)景相關(guān)資料整理

      為搭建油田各項(xiàng)作業(yè)的虛擬培訓(xùn)環(huán)境,需要先構(gòu)建各項(xiàng)作業(yè)所包含真實(shí)場(chǎng)景及作業(yè)工具的三維虛擬模型,模型構(gòu)建的好壞直接影響到油田各個(gè)作業(yè)場(chǎng)景的真實(shí)性及運(yùn)行速率。

      在搭建三維虛擬模型之前,需要先進(jìn)行場(chǎng)景相關(guān)材料的整理。拍攝工具照片、了解工具內(nèi)外部構(gòu)造、丈量工具尺寸等,盡可能多且詳細(xì)地獲取真實(shí)場(chǎng)景及作業(yè)工具信息,這樣構(gòu)建出來(lái)的三維虛擬模型才會(huì)更加具備真實(shí)性。

      2.2 三維模型構(gòu)建、美化及動(dòng)畫(huà)制作

      在完成場(chǎng)景的相關(guān)材料整理之后,可著手利用3ds Max軟件進(jìn)行三維模型的構(gòu)建工作,其中包括工具模型和角色模型。構(gòu)建三維模型時(shí)應(yīng)注意模型的面數(shù)問(wèn)題,模型面數(shù)越多代表構(gòu)建的模型越精細(xì),模型的真實(shí)度越高,但應(yīng)考慮模型的真實(shí)性和場(chǎng)景運(yùn)行效率之間的均衡,所以在保證模型盡可能和真實(shí)物體相像的基礎(chǔ)上,構(gòu)建模型所用的面數(shù)越少越好。

      模型構(gòu)建完成以后,一般只是外形和真實(shí)工具相像,逼真度不高,其主要原因是缺乏和真實(shí)工具相似的物理屬性,這就需要我們?cè)趍ax中繼續(xù)對(duì)其進(jìn)行美化,為其設(shè)置材質(zhì)和貼圖,從而提高物體的逼真性,該功能可以利用max自帶的材質(zhì)編輯器來(lái)完成[3]。該過(guò)程中需要配合使用Photoshop進(jìn)行貼圖的處理。

      角色模型在系統(tǒng)中要展示一定的動(dòng)作,因此需要在max中為其進(jìn)行動(dòng)畫(huà)的設(shè)計(jì)和制作,以便后期導(dǎo)入U(xiǎn)nity 3D中進(jìn)行調(diào)用。

      至此,模型構(gòu)建、美化及動(dòng)畫(huà)制作工作徹底完成。

      2.3 虛擬場(chǎng)景集成

      在max中構(gòu)建完成的模型需要在Unity 3D中進(jìn)行調(diào)用并進(jìn)行虛擬交互功能的編程實(shí)現(xiàn)。但max格式的模型文件不可以直接被Unity 3D調(diào)用,需要將其導(dǎo)出為fbx格式的文件,才可以在Unity 3D中進(jìn)行調(diào)用[4]。

      將導(dǎo)出的fbx格式模型文件存放在Unity 3D工程文件夾下的Assets文件夾中,打開(kāi)工程文件時(shí)Unity 3D會(huì)自動(dòng)將模型、材質(zhì)、貼圖及三維動(dòng)畫(huà)導(dǎo)入。導(dǎo)入完成后將Project面板下的模型文件通過(guò)拖拽的方式放到Scene中,調(diào)整模型位置并對(duì)模型進(jìn)行相關(guān)屬性的設(shè)置。

      為了提高虛擬三維場(chǎng)景的真實(shí)性,需要在場(chǎng)景中添加燈光并對(duì)其進(jìn)行設(shè)置。為完成系統(tǒng)中的人機(jī)交互操作,需要在場(chǎng)景中添加主攝像機(jī)等元素。

      至此,虛擬場(chǎng)景的集成工作完成。

      2.4 集成場(chǎng)景的進(jìn)一步真實(shí)化

      為了進(jìn)一步提高模型的質(zhì)感,提高場(chǎng)景的真實(shí)感,依據(jù)現(xiàn)實(shí)生活中真實(shí)物體的物理屬性,可以在Unity 3D中對(duì)虛擬模型進(jìn)行紋理貼圖及Shader腳本的設(shè)置。Shader是隨著可編程渲染管線誕生的,為渲染管線中的特定處理階段提供算法。Unity 3D中內(nèi)置了ShaderLab語(yǔ)言,可以設(shè)置模型材質(zhì)和陰影。以法線貼圖為例:

      3 系統(tǒng)仿真培訓(xùn)功能的實(shí)現(xiàn)

      3.1系統(tǒng)仿真培訓(xùn)功能的設(shè)定

      該仿真系統(tǒng)的培訓(xùn)功能如下:

      1)系統(tǒng)按照每項(xiàng)具體作業(yè)進(jìn)行模塊劃分。每個(gè)作業(yè)模塊將該作業(yè)過(guò)程中所包含的每個(gè)操作工序劃分為一個(gè)培訓(xùn)點(diǎn),并根據(jù)培訓(xùn)角色對(duì)培訓(xùn)點(diǎn)進(jìn)行相關(guān)數(shù)據(jù)的分類(lèi)存儲(chǔ)。

      2)每個(gè)模塊均可以分角色登錄(角色劃分按照油田實(shí)際作業(yè)中作業(yè)工的職能來(lái)進(jìn)行劃分)。

      3)用戶登錄后系統(tǒng)自動(dòng)從數(shù)據(jù)庫(kù)中調(diào)用該作業(yè)模塊中該用戶的操作工序培訓(xùn)試題,用戶即可通過(guò)鼠標(biāo)鍵盤(pán)等交互設(shè)備進(jìn)行人機(jī)交互操作,完成該模塊作業(yè)流程的仿真培訓(xùn)。

      作業(yè)模塊中包含的操作工序試題類(lèi)型分為三大類(lèi):文字選擇題、工具選擇題和物體選擇題。文字選擇題主要考核作業(yè)工在該作業(yè)模塊中符合作業(yè)流程的每一步操作工序內(nèi)容。選擇正確的操作工序后,如果該工序不需要工具,則直接進(jìn)行正確的操作工序內(nèi)容動(dòng)作播放;如果該工序需要工具,則進(jìn)行工具選擇題的考核,需要用戶選擇正確的工具。用戶選擇完正確的工具后,進(jìn)入物體選擇題,選擇該工具所要操作的具體物體。只有正確地完成了工具選擇題和物體選擇題,才可以進(jìn)入正確的操作工序內(nèi)容動(dòng)作播放。重復(fù)以上過(guò)程直至完成整個(gè)作業(yè)流程。

      4)作業(yè)模塊培訓(xùn)完成后,自動(dòng)計(jì)算用戶成績(jī)并提交進(jìn)行數(shù)據(jù)信息的本地存儲(chǔ)。

      5)通過(guò)成績(jī)上傳功能完成用戶培訓(xùn)成績(jī)的服務(wù)器端入庫(kù)操作。

      6)管理人員通過(guò)系統(tǒng)信息維護(hù)網(wǎng)頁(yè)來(lái)查看作業(yè)工的培訓(xùn)情況,進(jìn)行數(shù)據(jù)的統(tǒng)計(jì)與分析,掌握培訓(xùn)情況并適時(shí)做出調(diào)整。

      3.2 系統(tǒng)用到的關(guān)鍵技術(shù)

      為完成系統(tǒng)的所有功能,在系統(tǒng)開(kāi)發(fā)過(guò)程中用到了很多的關(guān)鍵技術(shù),下面選取一些比較有代表性的進(jìn)行闡述。

      3.3.1 數(shù)據(jù)的存儲(chǔ)與傳輸

      本文所開(kāi)發(fā)的系統(tǒng)為適合不同平臺(tái)的單機(jī)版,系統(tǒng)所用的數(shù)據(jù)信息全部?jī)?chǔ)存在服務(wù)器端的Oracle數(shù)據(jù)庫(kù)中。在使用時(shí)用戶在客戶端先進(jìn)行數(shù)據(jù)信息的下載,具體流程是將服務(wù)器端數(shù)據(jù)庫(kù)中所需的數(shù)據(jù)(如用戶信息、各模塊的操作工序信息等)封裝進(jìn)行傳輸,再在客戶端進(jìn)行解析,并寫(xiě)入客戶端加密的txt文件中,供客戶端程序調(diào)用。

      用戶運(yùn)行客戶端仿真模塊,培訓(xùn)完畢后相關(guān)數(shù)據(jù)存儲(chǔ)到本地加密的txt文件中,在有網(wǎng)絡(luò)連接時(shí)將該文件中的數(shù)據(jù)信息上傳至服務(wù)器上,服務(wù)器對(duì)數(shù)據(jù)信息進(jìn)行拆解,并存入服務(wù)器端的數(shù)據(jù)庫(kù)中。

      3.3.2 相機(jī)控制

      仿真培訓(xùn)系統(tǒng)離不開(kāi)視點(diǎn)的交互,通過(guò)視點(diǎn)交互才能保證用戶正確地觀察和操作場(chǎng)景中的物體,本系統(tǒng)實(shí)現(xiàn)時(shí)采用攝像機(jī)來(lái)模擬用戶的視點(diǎn),通過(guò)對(duì)相機(jī)位置及角度的控制來(lái)模擬人的視點(diǎn)變化。

      在培訓(xùn)時(shí),隨著模塊操作工序的變化,用戶會(huì)隨著場(chǎng)景中的工具或者角色的位置變化而移動(dòng)視點(diǎn),即需要調(diào)整攝像機(jī)的位置和角度。本系統(tǒng)在模擬該功能時(shí)充分考慮到方法的通用性,為攝像機(jī)設(shè)置父物體;這樣當(dāng)用戶的視點(diǎn)需要變化時(shí),只需要更改攝像機(jī)的父物體,并進(jìn)行適當(dāng)?shù)臄z像機(jī)角度調(diào)整,即可達(dá)到準(zhǔn)確變換視點(diǎn)來(lái)觀察物體的目的。方法描述如下:

      3.3.4動(dòng)畫(huà)控制

      Unity 3D平臺(tái)可以引用max中的動(dòng)畫(huà)文件,但是在導(dǎo)出時(shí)動(dòng)畫(huà)和模型不能分離,模型不可以重復(fù)利用,并且會(huì)增大系統(tǒng)的內(nèi)存占用。因此,本系統(tǒng)中對(duì)物體的動(dòng)作控制大部分是通過(guò)直接在Unity 3D平臺(tái)上編寫(xiě)功能代碼的方式來(lái)實(shí)現(xiàn)的,只是這種功能代碼只能針對(duì)某個(gè)具體物體進(jìn)行,不可復(fù)用。因此,本系統(tǒng)在進(jìn)行動(dòng)畫(huà)控制時(shí)還利用了Unity 3D提供的兩種動(dòng)畫(huà)控制組件:Animation和Animator,這兩種組件編寫(xiě)的動(dòng)畫(huà)可復(fù)用。

      Animation是利用初始狀態(tài)和終了狀態(tài)來(lái)創(chuàng)建補(bǔ)間動(dòng)畫(huà),如虛擬場(chǎng)景中物體的移動(dòng)、旋轉(zhuǎn)等簡(jiǎn)單操作。動(dòng)畫(huà)創(chuàng)建完成后命名保存,并在引用該動(dòng)畫(huà)的物體代碼中直接調(diào)用,示例代碼如下:

      animation.CrossFade ("rotate");//播放名稱為rotate的動(dòng)畫(huà)

      Animator主要用來(lái)進(jìn)行動(dòng)畫(huà)狀態(tài)的切換,在本系統(tǒng)中用它來(lái)進(jìn)行虛擬角色的動(dòng)作切換:由跑步切換為站立,由站立切換為打手勢(shì)等;這種動(dòng)作切換比較連貫且不會(huì)有停頓的感覺(jué)。Animator和Animation結(jié)合,可以自由地對(duì)虛擬場(chǎng)景中的物體自由進(jìn)行動(dòng)畫(huà)狀態(tài)切換和動(dòng)畫(huà)播放。

      4系統(tǒng)的多平臺(tái)發(fā)布

      Unity 3D具有良好的跨平臺(tái)特性,,系統(tǒng)模塊一次開(kāi)發(fā)后,進(jìn)行極少的代碼調(diào)整及發(fā)布設(shè)置,可發(fā)布為適合不同平臺(tái)的最終作品,如Windows、Android、Mac、Wii、iPhone和Windows phone 8平臺(tái)。還可以通過(guò)Unity web player插件發(fā)布為網(wǎng)頁(yè)版,運(yùn)行于Mac 和Windows平臺(tái)之上。

      本文所開(kāi)發(fā)的系統(tǒng),在進(jìn)行適合不同平臺(tái)的代碼調(diào)整后,通過(guò)適合不同版本的發(fā)布設(shè)置,最終發(fā)布為適合Windows系統(tǒng)的單機(jī)版exe格式,運(yùn)行在PC機(jī)固定終端之上;同時(shí)也發(fā)布為適合Android系統(tǒng)的apk單機(jī)版格式,運(yùn)行在安裝Android系統(tǒng)的移動(dòng)終端設(shè)備之上;無(wú)論哪種版本,運(yùn)行結(jié)果均良好。

      5 結(jié)束語(yǔ)

      基于Unity 3D游戲引擎平臺(tái)開(kāi)發(fā)的油田安全作業(yè)仿真培訓(xùn)系統(tǒng),逼真度高,運(yùn)行穩(wěn)定,交互性良好,其適宜發(fā)布為多平臺(tái)可運(yùn)行系統(tǒng)的特性彌補(bǔ)了當(dāng)前油田培訓(xùn)系統(tǒng)運(yùn)行平臺(tái)單一的缺陷。發(fā)布于Android移動(dòng)終端的版本具有不聯(lián)網(wǎng)隨時(shí)隨地可培訓(xùn)的特點(diǎn),深受在外作業(yè)油田作業(yè)工的喜愛(ài)。運(yùn)行于兩種平臺(tái)之上的系統(tǒng)均能達(dá)到良好的培訓(xùn)效果,能有效地幫助油田作業(yè)工熟悉和掌握正確規(guī)范的油田作業(yè)流程,防止誤操作引起的各種風(fēng)險(xiǎn)。同時(shí),系統(tǒng)開(kāi)發(fā)時(shí)完全依據(jù)油田作業(yè)規(guī)范進(jìn)行,適宜于在油田范圍內(nèi)推廣。

      參考文獻(xiàn):

      [1]董健. 一款基于Unity3D的移動(dòng)平臺(tái)游戲的設(shè)計(jì)[J]. 軟件工程師,2014,17(12):34-35.

      [2]曲寶,趙婭,趙琦. 基于Virtools的虛擬家居漫游系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與科學(xué),2009,31(12):130-133.

      [3]劉金明,馬鐵民,王娜. 基于Unity3D的電動(dòng)機(jī)虛擬仿真展示平臺(tái)設(shè)計(jì)[J]. 黑龍江八一農(nóng)墾大學(xué)學(xué)報(bào),2014,26(6):66-68.

      [4]馬瑞. 基于Unity3D的多平臺(tái)三維虛擬數(shù)字校園的設(shè)計(jì)與實(shí)現(xiàn)[J]. 蚌埠學(xué)院學(xué)報(bào),2014,3(4):13-16.

      猜你喜歡
      物體油田動(dòng)畫(huà)
      碳中和油田的未來(lái)之路
      做個(gè)動(dòng)畫(huà)給你看
      我國(guó)海上油田新發(fā)現(xiàn)
      動(dòng)畫(huà)發(fā)展史
      深刻理解物體的平衡
      我的動(dòng)畫(huà)夢(mèng)
      文苑(2019年22期)2019-12-07 05:28:56
      我們是怎樣看到物體的
      掘金油田環(huán)保
      能源(2016年1期)2016-12-01 05:10:06
      我是動(dòng)畫(huà)迷
      為什么同一物體在世界各地重量不一樣?
      武山县| 桃江县| 广丰县| 博野县| 加查县| 故城县| 远安县| 阿克苏市| 卢湾区| 台山市| 大理市| 都昌县| 西昌市| 玛曲县| 奈曼旗| 阿拉尔市| 句容市| 鄄城县| 永州市| 定西市| 利辛县| 东乌| 海安县| 墨玉县| 屏南县| 岳池县| 宁夏| 元江| 阿尔山市| 阳春市| 青浦区| 阿坝县| 奎屯市| 颍上县| 黄骅市| 加查县| 兴国县| 穆棱市| 三亚市| 务川| 普格县|