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

?

基于Unity3D的通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)

2014-07-18 18:41馮劍川杜軼焜伊鑫
電腦知識(shí)與技術(shù) 2014年13期

馮劍川 杜軼焜+伊鑫

摘要:針對(duì)院校各類型專業(yè)競(jìng)賽逐年增多但競(jìng)賽組織效率偏低的現(xiàn)狀,基于Unity3D開發(fā)了通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)。該系統(tǒng)具有三維場(chǎng)景生成、可視化競(jìng)賽現(xiàn)場(chǎng)布置、競(jìng)賽流程模擬演練和方案報(bào)表生成等功能,有效提高了競(jìng)賽組織效率,具有廣泛的應(yīng)用前景和較高的推廣價(jià)值。

關(guān)鍵詞:Unity3D;競(jìng)賽流程;模擬演練

中圖分類號(hào):TP319 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)13-2971-03

A Simulation System of Communication Competition Based on Unity3D

FENG Jian-chuan1, DU Yi-kun 2, YI Xin 1

(1.Bengbu Naval Petty Officer Academy, Bengbu 233012, China; 2.China Aerodynamics Research and Development Center with High-speed, Mianyang 621000, China)

Abstract: According to the actuality of the low organizational efficiency for all types of professional competitions which is increasing every year, , we design a professional communication competition process simulation training system based on Unity3D. The system has a three-dimensional scene generation, visualization contest site layout, process simulation and report generation capabilities. The work of this paper improves the efficiency of the organization of the competitions, with a wide range of applications and high promotional value.

Key words: Unity3D; competition process; simulation exercise

目前,院校組織的各類型專業(yè)競(jìng)賽逐年增多。通常,競(jìng)賽組織者根據(jù)競(jìng)賽總體要求,先期熟悉場(chǎng)地環(huán)境,之后進(jìn)行競(jìng)賽準(zhǔn)備方案撰寫,主要包括場(chǎng)地布置、人員車輛分配調(diào)度、流程安排等,進(jìn)而召集相關(guān)人員召開競(jìng)賽前期準(zhǔn)備協(xié)調(diào)會(huì),通報(bào)準(zhǔn)備情況,部署競(jìng)賽組人員具體分工,之后按照時(shí)間節(jié)點(diǎn)檢查落實(shí)情況。在競(jìng)賽前組織兩至三次預(yù)演,熟悉整個(gè)流程,發(fā)現(xiàn)存在的問題并及時(shí)修正。

在組織競(jìng)賽過程中,普遍存在方案制定繁瑣復(fù)雜、前期預(yù)演效率低下、人員組織協(xié)調(diào)難度大等諸多問題。因此,競(jìng)賽組織者迫切需要一種能夠輔助其進(jìn)行競(jìng)賽組織的工具。為解決以上問題,以通信類專業(yè)競(jìng)賽為切入點(diǎn),該文提出“基于Unity3D的通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)”。Unity3D是一款專業(yè)3D引攀,具備跨平臺(tái)發(fā)布、高效能優(yōu)化、高性價(jià)比、AAA級(jí)畫面渲染效果等特點(diǎn)。該引擎最大的優(yōu)勢(shì)是性價(jià)比高,并且可以發(fā)布成網(wǎng)頁(yè)瀏覽的方式,不用下載客戶端,就能直接體驗(yàn)[1]。該文所提出的通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)即基于該引擎開發(fā)。

1 系統(tǒng)的目標(biāo)功能

1.1 可視化競(jìng)賽現(xiàn)場(chǎng)布置功能

改變以往“現(xiàn)場(chǎng)看、腦子想、紙上畫”的場(chǎng)地布置方式,為競(jìng)賽組織者呈現(xiàn)三維可視化的競(jìng)賽現(xiàn)場(chǎng),將競(jìng)賽所需器材設(shè)備用品等分門別類作為競(jìng)賽現(xiàn)場(chǎng)布置基本模塊單元,使組織者可采用拖拽的形式進(jìn)行競(jìng)賽場(chǎng)地可視化布置。同時(shí),組織者可對(duì)布置的基本模塊進(jìn)行屬性信息編輯,明確人員分工、對(duì)外協(xié)調(diào)和時(shí)間節(jié)點(diǎn)等信息,存入后臺(tái)數(shù)據(jù)庫(kù),待實(shí)時(shí)查看最終效果且滿意后,可將完整的場(chǎng)地布置信息報(bào)表輸出。

1.2 競(jìng)賽流程模擬演練功能

改變以往大規(guī)模人員調(diào)動(dòng)困難、組織協(xié)調(diào)復(fù)雜等競(jìng)賽前期模擬演練存在的問題,以競(jìng)賽時(shí)間軸為主線,在可視化競(jìng)賽現(xiàn)場(chǎng)的基礎(chǔ)上,根據(jù)競(jìng)賽方案設(shè)定各時(shí)間節(jié)點(diǎn)人員位置編排、任務(wù)分工、行進(jìn)路線、行進(jìn)速率、到達(dá)時(shí)間等信息,先期在計(jì)算機(jī)上進(jìn)行整個(gè)競(jìng)賽流程模擬演練,及時(shí)發(fā)現(xiàn)存在的問題,為進(jìn)一步修改完善方案提供依據(jù)。待模擬演練效果滿意后,可召集競(jìng)賽組人員在競(jìng)賽前期準(zhǔn)備協(xié)調(diào)會(huì)期間進(jìn)行流程展示宣講[2]。

2 總體方案設(shè)計(jì)

2.1 系統(tǒng)總體構(gòu)成

“通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)”由可視化場(chǎng)地布置和流程模擬演練兩大模塊構(gòu)成,總體構(gòu)成見圖1。其中,可視化場(chǎng)地布置模塊由三維場(chǎng)景生成、競(jìng)賽場(chǎng)地布置、場(chǎng)地方案報(bào)表生成等子模塊組成。流程模擬演練模塊由節(jié)點(diǎn)設(shè)定、模擬演練和流程方案報(bào)表生成等子模塊組成。

圖1 通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)總體構(gòu)成

2.2 主要模塊

“通信專業(yè)競(jìng)賽流程模擬演練系統(tǒng)”主要用于通信專業(yè)競(jìng)賽場(chǎng)地可視化布置,輔助競(jìng)賽組織者進(jìn)行前期方案制定,并根據(jù)方案要求進(jìn)行前期競(jìng)賽流程的模擬演練,以便于即時(shí)發(fā)現(xiàn)方案制定中存在的問題,從而有效提高競(jìng)賽組織效率。

1)可視化場(chǎng)地布置

該功能模塊主要包含“三維場(chǎng)景生成”、“競(jìng)賽場(chǎng)地布置”、“場(chǎng)地方案報(bào)表生成”三個(gè)子模塊?!叭S場(chǎng)景生成”模塊可實(shí)現(xiàn)通信專業(yè)競(jìng)賽場(chǎng)地的三維場(chǎng)景生成,為后續(xù)功能模塊提供基礎(chǔ)平臺(tái),這是整個(gè)系統(tǒng)可視化的基礎(chǔ);“競(jìng)賽場(chǎng)地布置”模塊通過前期分析,將裝設(shè)備、電腦、打印機(jī)、桌椅、標(biāo)牌、橫幅、指示牌等競(jìng)賽過程中所需器材設(shè)備用品等分別歸類,生成競(jìng)賽用品布置基本模塊單元庫(kù),基于前期生成的可視化三維競(jìng)賽場(chǎng)景,組織者可采用拖拽的形式進(jìn)行競(jìng)賽場(chǎng)地可視化布置,實(shí)時(shí)查看最終效果。同時(shí),組織者可對(duì)布置的基本模塊進(jìn)行屬性信息編輯,明確人員分工、對(duì)外協(xié)調(diào)和時(shí)間節(jié)點(diǎn)等信息,存入后臺(tái)數(shù)據(jù)庫(kù)。在與競(jìng)賽組人員進(jìn)行溝通交流的過程中,若發(fā)現(xiàn)不適宜之處,可及時(shí)修改相應(yīng)屬性信息,使方案更進(jìn)一步趨于完善;在“場(chǎng)地方案報(bào)表生成”模塊中組織者在競(jìng)賽場(chǎng)地布置完成查看最終效果且滿意后,可將完整的場(chǎng)地布置信息報(bào)表按預(yù)定需求輸出打印,方便查看。

2)流程模擬演練

該功能模塊主要包含“節(jié)點(diǎn)設(shè)定”、“模擬演練”和“流程方案報(bào)表生成”三個(gè)子模塊。“節(jié)點(diǎn)設(shè)定”模塊以競(jìng)賽總體方案為依據(jù),以競(jìng)賽時(shí)間軸為主線,在可視化三維競(jìng)賽場(chǎng)景的基礎(chǔ)上,競(jìng)賽組織者可設(shè)定各時(shí)間節(jié)點(diǎn)人員的位置編排、任務(wù)分工、行進(jìn)路線、速率等信息,并存入后臺(tái)數(shù)據(jù)庫(kù);“模擬演練”模塊在節(jié)點(diǎn)設(shè)定的基礎(chǔ)上,競(jìng)賽組織者先期在計(jì)算機(jī)上進(jìn)行整個(gè)競(jìng)賽流程的模擬演練,及時(shí)發(fā)現(xiàn)存在的問題并修改節(jié)點(diǎn)設(shè)定,使方案更進(jìn)一步趨于完善;“流程方案報(bào)表生成”模塊在流程模擬演練順利結(jié)束后,競(jìng)賽組織者可將存于后臺(tái)數(shù)據(jù)庫(kù)中的競(jìng)賽流程方案報(bào)表輸出打印。

3 系統(tǒng)實(shí)現(xiàn)

3.1 可視化競(jìng)賽現(xiàn)場(chǎng)三維場(chǎng)景生成

可視化競(jìng)賽現(xiàn)場(chǎng)通過對(duì)先期獲得的競(jìng)賽現(xiàn)場(chǎng)建筑的CAD圖紙進(jìn)行相應(yīng)整理,之后導(dǎo)入3dsMax軟件實(shí)現(xiàn)場(chǎng)景建模。對(duì)三維模型的建立,主要依據(jù)實(shí)際場(chǎng)景本身的物理狀態(tài),即具體的大小尺寸,其原則就是在盡量減小面數(shù)的同時(shí)提高逼真度[3]。

3.2 競(jìng)賽場(chǎng)地布置和流程模擬演練

將3dsMax軟件生成的可視化競(jìng)賽現(xiàn)場(chǎng)三維場(chǎng)景導(dǎo)入U(xiǎn)nity3D引擎,在其中進(jìn)行競(jìng)賽場(chǎng)地布置和流程模擬演練功能開發(fā)[4]。競(jìng)賽場(chǎng)地布置和流程模擬演練所需的大量人機(jī)交互功能均在該引擎中設(shè)計(jì)實(shí)現(xiàn),具體如下:

1)利用剛體碰撞器物理引擎實(shí)現(xiàn)場(chǎng)景布置時(shí)的定位;

2)利用角色控制器進(jìn)行視角轉(zhuǎn)換以實(shí)現(xiàn)第一人稱視角場(chǎng)景檢視和第三人稱視角流程模擬演練功能;

3)利用鍵盤鼠標(biāo)自定義按鍵等輸入控制事件實(shí)現(xiàn)人機(jī)交互;

4)利用路點(diǎn)功能設(shè)置人員行進(jìn)路徑以實(shí)現(xiàn)流程模擬演練;

5)利用MySQL實(shí)現(xiàn)場(chǎng)景布置信息和節(jié)點(diǎn)設(shè)定信息的后臺(tái)數(shù)據(jù)庫(kù)存儲(chǔ)并報(bào)表輸出。

3.3 方案報(bào)表生成

由于Unity3D本身提供的持久化數(shù)據(jù)僅能存取少量數(shù)據(jù),故本系統(tǒng)采用第三方MySQL數(shù)據(jù)庫(kù)存儲(chǔ)場(chǎng)地布置方案和流程設(shè)定方案信息。MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),相較于SQLServer數(shù)據(jù)庫(kù),其體積小、速度快、總體擁有成本低[5]。

為生成相應(yīng)方案報(bào)表,系統(tǒng)采用MySQL數(shù)據(jù)庫(kù)中自帶的MySQL For Excel插件實(shí)現(xiàn),該插件作為加載項(xiàng)嵌入Excel軟件中,可將MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)的信息導(dǎo)出至Excel表格中,方便后期打印輸出,輔助競(jìng)賽組織者進(jìn)行前期方案生成。

3.4 關(guān)鍵技術(shù)實(shí)現(xiàn)

1)競(jìng)賽場(chǎng)地布置

在真3D環(huán)境下進(jìn)行競(jìng)賽場(chǎng)地布置,具有較好的沉浸式真實(shí)感。如何實(shí)現(xiàn)真3D環(huán)境下物品擺放的三維坐標(biāo)精確控制,是競(jìng)賽場(chǎng)地布置功能需要著重解決的問題。為使組織者可采用拖拽的方式進(jìn)行競(jìng)賽場(chǎng)地可視化布置,需要相應(yīng)的拖拽算法,主要解決如何將鼠標(biāo)的二維坐標(biāo)移動(dòng)轉(zhuǎn)換成三維世界的移動(dòng)向量,該算法流程如下圖2所示。

圖2 Unity3D拖拽功能實(shí)現(xiàn)流程

2)模擬演練

流程模擬演練可鑒定通用塔防游戲的設(shè)計(jì)思路[6],通過創(chuàng)建二維數(shù)組保存場(chǎng)景信息,攝像機(jī)始終由上至下俯視整個(gè)場(chǎng)景,自定義路徑節(jié)點(diǎn)引導(dǎo)人員按規(guī)定速率行動(dòng),并實(shí)時(shí)記錄行動(dòng)耗時(shí)信息。為使路徑節(jié)點(diǎn)人員能夠按設(shè)定程序依次有序行進(jìn)演練,自定義路徑節(jié)點(diǎn)信息設(shè)定完畢后,需要對(duì)設(shè)定信息進(jìn)行沖突檢測(cè),防止邏輯混亂,出現(xiàn)一人在同一時(shí)間分處不同兩地的情形。設(shè)置人員尋路的流程如圖3所示。

圖3 設(shè)置人員尋路流程

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

本系統(tǒng)初期可滿足院校通信類專業(yè)競(jìng)賽流程模擬演練,使競(jìng)賽組織者可進(jìn)行競(jìng)賽場(chǎng)地可視化布置,有效輔助其進(jìn)行前期方案制定。同時(shí),可依照組織者的需求進(jìn)行競(jìng)賽前期的整體流程模擬演練,以便于即時(shí)發(fā)現(xiàn)方案制定中存在的問題,從而有效提高競(jìng)賽組織效率。此外,該系統(tǒng)具有較好的推廣性,結(jié)合各院校其它專業(yè)競(jìng)賽具體要求進(jìn)行二次開發(fā),即可滿足其專業(yè)競(jìng)賽的模擬演練功能。后期若構(gòu)建全校的三維模型,可將該系統(tǒng)推廣到全校大型活動(dòng)時(shí)的流程模擬演練。

參考文獻(xiàn):

[1] 王星捷,李春花.基于Unity3D平臺(tái)的三維虛擬城市研究與應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013(4):241-244.

[2] 張博倫,王寧,馬慧敏.有限狀態(tài)機(jī)在模擬演練系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013(2):100-104.

[3] 高月.3ds Max建筑模型完全學(xué)習(xí)手冊(cè)[M].科學(xué)出版社,2010:97-105.

[4] 宣雨松.Unity3D游戲開發(fā)[M].北京:人民郵電出版社,2012:105-140.

[5] 朱一凡,陳曦.基于PHP語(yǔ)言的MySQL數(shù)據(jù)庫(kù)的多種輸出方案[J].無(wú)線互聯(lián)科技,2013(8):58-59.

[6] 金璽曾.Unity3D手機(jī)游戲開發(fā)[M].北京:清華大學(xué)出版社,2013:210-218.

2)流程模擬演練

該功能模塊主要包含“節(jié)點(diǎn)設(shè)定”、“模擬演練”和“流程方案報(bào)表生成”三個(gè)子模塊?!肮?jié)點(diǎn)設(shè)定”模塊以競(jìng)賽總體方案為依據(jù),以競(jìng)賽時(shí)間軸為主線,在可視化三維競(jìng)賽場(chǎng)景的基礎(chǔ)上,競(jìng)賽組織者可設(shè)定各時(shí)間節(jié)點(diǎn)人員的位置編排、任務(wù)分工、行進(jìn)路線、速率等信息,并存入后臺(tái)數(shù)據(jù)庫(kù);“模擬演練”模塊在節(jié)點(diǎn)設(shè)定的基礎(chǔ)上,競(jìng)賽組織者先期在計(jì)算機(jī)上進(jìn)行整個(gè)競(jìng)賽流程的模擬演練,及時(shí)發(fā)現(xiàn)存在的問題并修改節(jié)點(diǎn)設(shè)定,使方案更進(jìn)一步趨于完善;“流程方案報(bào)表生成”模塊在流程模擬演練順利結(jié)束后,競(jìng)賽組織者可將存于后臺(tái)數(shù)據(jù)庫(kù)中的競(jìng)賽流程方案報(bào)表輸出打印。

3 系統(tǒng)實(shí)現(xiàn)

3.1 可視化競(jìng)賽現(xiàn)場(chǎng)三維場(chǎng)景生成

可視化競(jìng)賽現(xiàn)場(chǎng)通過對(duì)先期獲得的競(jìng)賽現(xiàn)場(chǎng)建筑的CAD圖紙進(jìn)行相應(yīng)整理,之后導(dǎo)入3dsMax軟件實(shí)現(xiàn)場(chǎng)景建模。對(duì)三維模型的建立,主要依據(jù)實(shí)際場(chǎng)景本身的物理狀態(tài),即具體的大小尺寸,其原則就是在盡量減小面數(shù)的同時(shí)提高逼真度[3]。

3.2 競(jìng)賽場(chǎng)地布置和流程模擬演練

將3dsMax軟件生成的可視化競(jìng)賽現(xiàn)場(chǎng)三維場(chǎng)景導(dǎo)入U(xiǎn)nity3D引擎,在其中進(jìn)行競(jìng)賽場(chǎng)地布置和流程模擬演練功能開發(fā)[4]。競(jìng)賽場(chǎng)地布置和流程模擬演練所需的大量人機(jī)交互功能均在該引擎中設(shè)計(jì)實(shí)現(xiàn),具體如下:

1)利用剛體碰撞器物理引擎實(shí)現(xiàn)場(chǎng)景布置時(shí)的定位;

2)利用角色控制器進(jìn)行視角轉(zhuǎn)換以實(shí)現(xiàn)第一人稱視角場(chǎng)景檢視和第三人稱視角流程模擬演練功能;

3)利用鍵盤鼠標(biāo)自定義按鍵等輸入控制事件實(shí)現(xiàn)人機(jī)交互;

4)利用路點(diǎn)功能設(shè)置人員行進(jìn)路徑以實(shí)現(xiàn)流程模擬演練;

5)利用MySQL實(shí)現(xiàn)場(chǎng)景布置信息和節(jié)點(diǎn)設(shè)定信息的后臺(tái)數(shù)據(jù)庫(kù)存儲(chǔ)并報(bào)表輸出。

3.3 方案報(bào)表生成

由于Unity3D本身提供的持久化數(shù)據(jù)僅能存取少量數(shù)據(jù),故本系統(tǒng)采用第三方MySQL數(shù)據(jù)庫(kù)存儲(chǔ)場(chǎng)地布置方案和流程設(shè)定方案信息。MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),相較于SQLServer數(shù)據(jù)庫(kù),其體積小、速度快、總體擁有成本低[5]。

為生成相應(yīng)方案報(bào)表,系統(tǒng)采用MySQL數(shù)據(jù)庫(kù)中自帶的MySQL For Excel插件實(shí)現(xiàn),該插件作為加載項(xiàng)嵌入Excel軟件中,可將MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)的信息導(dǎo)出至Excel表格中,方便后期打印輸出,輔助競(jìng)賽組織者進(jìn)行前期方案生成。

3.4 關(guān)鍵技術(shù)實(shí)現(xiàn)

1)競(jìng)賽場(chǎng)地布置

在真3D環(huán)境下進(jìn)行競(jìng)賽場(chǎng)地布置,具有較好的沉浸式真實(shí)感。如何實(shí)現(xiàn)真3D環(huán)境下物品擺放的三維坐標(biāo)精確控制,是競(jìng)賽場(chǎng)地布置功能需要著重解決的問題。為使組織者可采用拖拽的方式進(jìn)行競(jìng)賽場(chǎng)地可視化布置,需要相應(yīng)的拖拽算法,主要解決如何將鼠標(biāo)的二維坐標(biāo)移動(dòng)轉(zhuǎn)換成三維世界的移動(dòng)向量,該算法流程如下圖2所示。

圖2 Unity3D拖拽功能實(shí)現(xiàn)流程

2)模擬演練

流程模擬演練可鑒定通用塔防游戲的設(shè)計(jì)思路[6],通過創(chuàng)建二維數(shù)組保存場(chǎng)景信息,攝像機(jī)始終由上至下俯視整個(gè)場(chǎng)景,自定義路徑節(jié)點(diǎn)引導(dǎo)人員按規(guī)定速率行動(dòng),并實(shí)時(shí)記錄行動(dòng)耗時(shí)信息。為使路徑節(jié)點(diǎn)人員能夠按設(shè)定程序依次有序行進(jìn)演練,自定義路徑節(jié)點(diǎn)信息設(shè)定完畢后,需要對(duì)設(shè)定信息進(jìn)行沖突檢測(cè),防止邏輯混亂,出現(xiàn)一人在同一時(shí)間分處不同兩地的情形。設(shè)置人員尋路的流程如圖3所示。

圖3 設(shè)置人員尋路流程

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

本系統(tǒng)初期可滿足院校通信類專業(yè)競(jìng)賽流程模擬演練,使競(jìng)賽組織者可進(jìn)行競(jìng)賽場(chǎng)地可視化布置,有效輔助其進(jìn)行前期方案制定。同時(shí),可依照組織者的需求進(jìn)行競(jìng)賽前期的整體流程模擬演練,以便于即時(shí)發(fā)現(xiàn)方案制定中存在的問題,從而有效提高競(jìng)賽組織效率。此外,該系統(tǒng)具有較好的推廣性,結(jié)合各院校其它專業(yè)競(jìng)賽具體要求進(jìn)行二次開發(fā),即可滿足其專業(yè)競(jìng)賽的模擬演練功能。后期若構(gòu)建全校的三維模型,可將該系統(tǒng)推廣到全校大型活動(dòng)時(shí)的流程模擬演練。

參考文獻(xiàn):

[1] 王星捷,李春花.基于Unity3D平臺(tái)的三維虛擬城市研究與應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013(4):241-244.

[2] 張博倫,王寧,馬慧敏.有限狀態(tài)機(jī)在模擬演練系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013(2):100-104.

[3] 高月.3ds Max建筑模型完全學(xué)習(xí)手冊(cè)[M].科學(xué)出版社,2010:97-105.

[4] 宣雨松.Unity3D游戲開發(fā)[M].北京:人民郵電出版社,2012:105-140.

[5] 朱一凡,陳曦.基于PHP語(yǔ)言的MySQL數(shù)據(jù)庫(kù)的多種輸出方案[J].無(wú)線互聯(lián)科技,2013(8):58-59.

[6] 金璽曾.Unity3D手機(jī)游戲開發(fā)[M].北京:清華大學(xué)出版社,2013:210-218.

2)流程模擬演練

該功能模塊主要包含“節(jié)點(diǎn)設(shè)定”、“模擬演練”和“流程方案報(bào)表生成”三個(gè)子模塊。“節(jié)點(diǎn)設(shè)定”模塊以競(jìng)賽總體方案為依據(jù),以競(jìng)賽時(shí)間軸為主線,在可視化三維競(jìng)賽場(chǎng)景的基礎(chǔ)上,競(jìng)賽組織者可設(shè)定各時(shí)間節(jié)點(diǎn)人員的位置編排、任務(wù)分工、行進(jìn)路線、速率等信息,并存入后臺(tái)數(shù)據(jù)庫(kù);“模擬演練”模塊在節(jié)點(diǎn)設(shè)定的基礎(chǔ)上,競(jìng)賽組織者先期在計(jì)算機(jī)上進(jìn)行整個(gè)競(jìng)賽流程的模擬演練,及時(shí)發(fā)現(xiàn)存在的問題并修改節(jié)點(diǎn)設(shè)定,使方案更進(jìn)一步趨于完善;“流程方案報(bào)表生成”模塊在流程模擬演練順利結(jié)束后,競(jìng)賽組織者可將存于后臺(tái)數(shù)據(jù)庫(kù)中的競(jìng)賽流程方案報(bào)表輸出打印。

3 系統(tǒng)實(shí)現(xiàn)

3.1 可視化競(jìng)賽現(xiàn)場(chǎng)三維場(chǎng)景生成

可視化競(jìng)賽現(xiàn)場(chǎng)通過對(duì)先期獲得的競(jìng)賽現(xiàn)場(chǎng)建筑的CAD圖紙進(jìn)行相應(yīng)整理,之后導(dǎo)入3dsMax軟件實(shí)現(xiàn)場(chǎng)景建模。對(duì)三維模型的建立,主要依據(jù)實(shí)際場(chǎng)景本身的物理狀態(tài),即具體的大小尺寸,其原則就是在盡量減小面數(shù)的同時(shí)提高逼真度[3]。

3.2 競(jìng)賽場(chǎng)地布置和流程模擬演練

將3dsMax軟件生成的可視化競(jìng)賽現(xiàn)場(chǎng)三維場(chǎng)景導(dǎo)入U(xiǎn)nity3D引擎,在其中進(jìn)行競(jìng)賽場(chǎng)地布置和流程模擬演練功能開發(fā)[4]。競(jìng)賽場(chǎng)地布置和流程模擬演練所需的大量人機(jī)交互功能均在該引擎中設(shè)計(jì)實(shí)現(xiàn),具體如下:

1)利用剛體碰撞器物理引擎實(shí)現(xiàn)場(chǎng)景布置時(shí)的定位;

2)利用角色控制器進(jìn)行視角轉(zhuǎn)換以實(shí)現(xiàn)第一人稱視角場(chǎng)景檢視和第三人稱視角流程模擬演練功能;

3)利用鍵盤鼠標(biāo)自定義按鍵等輸入控制事件實(shí)現(xiàn)人機(jī)交互;

4)利用路點(diǎn)功能設(shè)置人員行進(jìn)路徑以實(shí)現(xiàn)流程模擬演練;

5)利用MySQL實(shí)現(xiàn)場(chǎng)景布置信息和節(jié)點(diǎn)設(shè)定信息的后臺(tái)數(shù)據(jù)庫(kù)存儲(chǔ)并報(bào)表輸出。

3.3 方案報(bào)表生成

由于Unity3D本身提供的持久化數(shù)據(jù)僅能存取少量數(shù)據(jù),故本系統(tǒng)采用第三方MySQL數(shù)據(jù)庫(kù)存儲(chǔ)場(chǎng)地布置方案和流程設(shè)定方案信息。MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),相較于SQLServer數(shù)據(jù)庫(kù),其體積小、速度快、總體擁有成本低[5]。

為生成相應(yīng)方案報(bào)表,系統(tǒng)采用MySQL數(shù)據(jù)庫(kù)中自帶的MySQL For Excel插件實(shí)現(xiàn),該插件作為加載項(xiàng)嵌入Excel軟件中,可將MySQL數(shù)據(jù)庫(kù)中存儲(chǔ)的信息導(dǎo)出至Excel表格中,方便后期打印輸出,輔助競(jìng)賽組織者進(jìn)行前期方案生成。

3.4 關(guān)鍵技術(shù)實(shí)現(xiàn)

1)競(jìng)賽場(chǎng)地布置

在真3D環(huán)境下進(jìn)行競(jìng)賽場(chǎng)地布置,具有較好的沉浸式真實(shí)感。如何實(shí)現(xiàn)真3D環(huán)境下物品擺放的三維坐標(biāo)精確控制,是競(jìng)賽場(chǎng)地布置功能需要著重解決的問題。為使組織者可采用拖拽的方式進(jìn)行競(jìng)賽場(chǎng)地可視化布置,需要相應(yīng)的拖拽算法,主要解決如何將鼠標(biāo)的二維坐標(biāo)移動(dòng)轉(zhuǎn)換成三維世界的移動(dòng)向量,該算法流程如下圖2所示。

圖2 Unity3D拖拽功能實(shí)現(xiàn)流程

2)模擬演練

流程模擬演練可鑒定通用塔防游戲的設(shè)計(jì)思路[6],通過創(chuàng)建二維數(shù)組保存場(chǎng)景信息,攝像機(jī)始終由上至下俯視整個(gè)場(chǎng)景,自定義路徑節(jié)點(diǎn)引導(dǎo)人員按規(guī)定速率行動(dòng),并實(shí)時(shí)記錄行動(dòng)耗時(shí)信息。為使路徑節(jié)點(diǎn)人員能夠按設(shè)定程序依次有序行進(jìn)演練,自定義路徑節(jié)點(diǎn)信息設(shè)定完畢后,需要對(duì)設(shè)定信息進(jìn)行沖突檢測(cè),防止邏輯混亂,出現(xiàn)一人在同一時(shí)間分處不同兩地的情形。設(shè)置人員尋路的流程如圖3所示。

圖3 設(shè)置人員尋路流程

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

本系統(tǒng)初期可滿足院校通信類專業(yè)競(jìng)賽流程模擬演練,使競(jìng)賽組織者可進(jìn)行競(jìng)賽場(chǎng)地可視化布置,有效輔助其進(jìn)行前期方案制定。同時(shí),可依照組織者的需求進(jìn)行競(jìng)賽前期的整體流程模擬演練,以便于即時(shí)發(fā)現(xiàn)方案制定中存在的問題,從而有效提高競(jìng)賽組織效率。此外,該系統(tǒng)具有較好的推廣性,結(jié)合各院校其它專業(yè)競(jìng)賽具體要求進(jìn)行二次開發(fā),即可滿足其專業(yè)競(jìng)賽的模擬演練功能。后期若構(gòu)建全校的三維模型,可將該系統(tǒng)推廣到全校大型活動(dòng)時(shí)的流程模擬演練。

參考文獻(xiàn):

[1] 王星捷,李春花.基于Unity3D平臺(tái)的三維虛擬城市研究與應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2013(4):241-244.

[2] 張博倫,王寧,馬慧敏.有限狀態(tài)機(jī)在模擬演練系統(tǒng)中的應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2013(2):100-104.

[3] 高月.3ds Max建筑模型完全學(xué)習(xí)手冊(cè)[M].科學(xué)出版社,2010:97-105.

[4] 宣雨松.Unity3D游戲開發(fā)[M].北京:人民郵電出版社,2012:105-140.

[5] 朱一凡,陳曦.基于PHP語(yǔ)言的MySQL數(shù)據(jù)庫(kù)的多種輸出方案[J].無(wú)線互聯(lián)科技,2013(8):58-59.

[6] 金璽曾.Unity3D手機(jī)游戲開發(fā)[M].北京:清華大學(xué)出版社,2013:210-218.

育儿| 太原市| 贵州省| 垫江县| 克什克腾旗| 北安市| 合水县| 安阳市| 馆陶县| 古田县| 宁南县| 雷波县| 雅安市| 昭觉县| 高台县| 和政县| 靖远县| 新乐市| 阿鲁科尔沁旗| 兴宁市| 上栗县| 迁西县| 琼结县| 名山县| 安平县| 安宁市| 微山县| 锦州市| 张北县| 郁南县| 手机| 灵宝市| 罗甸县| 东城区| 乌拉特中旗| 许昌县| 沾益县| 永寿县| 瓮安县| 平舆县| 明光市|