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

?

基于OpenGL的導(dǎo)彈飛行視景仿真實(shí)現(xiàn)

2018-12-21 19:11:16劉娜江南機(jī)電設(shè)計(jì)研究所
數(shù)碼世界 2018年5期
關(guān)鍵詞:視景繪制導(dǎo)彈

劉娜 江南機(jī)電設(shè)計(jì)研究所

1.引言

虛擬現(xiàn)實(shí)技術(shù)可利用計(jì)算機(jī)建立模型來描述人、物、環(huán)境及其相互關(guān)系,創(chuàng)造一個(gè)讓人如同體驗(yàn)真實(shí)場(chǎng)景的三維虛擬世界,在游戲開發(fā)、軍事仿真等領(lǐng)域得到廣泛應(yīng)用。OpenGL 作為一種開發(fā)可視化仿真系統(tǒng)的圖形API,提供了嚴(yán)格遵循計(jì)算機(jī)圖形學(xué)原理設(shè)計(jì)的點(diǎn)、線、多邊形等基本圖形函數(shù)以及圖形變換、紋理映射、動(dòng)畫顯示等圖形操作函數(shù),具有很強(qiáng)的二次開發(fā)功能。

本文在Visual C++平臺(tái)上利用OpenGL函數(shù)庫建立了導(dǎo)彈飛行視景仿真模型,根據(jù)輸入的導(dǎo)彈飛行數(shù)據(jù)參數(shù),可對(duì)導(dǎo)彈飛行彈道進(jìn)行可視化仿真,對(duì)所規(guī)劃的彈道進(jìn)行可行性驗(yàn)證。

2.視景仿真生成方法

2.1 導(dǎo)彈目標(biāo)建模方法

高品質(zhì)的三維實(shí)體模型是形成逼真的視景仿真效果的關(guān)鍵條件。OpenGL提供了一系列繪制基本圖元的函數(shù),然后利用繪制的基本圖元按照一定的空間位置組合形成復(fù)雜的幾何物體。采用這種方法對(duì)于形狀簡(jiǎn)單的物體較為容易,且可將繪制模型形成的代碼進(jìn)行封裝,重復(fù)使用,提高建模效率,本文中的導(dǎo)彈模型就是采用此方法建立的。根據(jù)導(dǎo)彈結(jié)構(gòu)特點(diǎn),把導(dǎo)彈分為彈頭、彈身、舵翼等部分。

對(duì)于如飛機(jī)等形狀復(fù)雜的目標(biāo)物體,單純利用上述基本圖元組合方法,編程復(fù)雜,圖形顯示實(shí)時(shí)性不能保證。本文對(duì)于目標(biāo)的外形的建立是通過3ds max實(shí)現(xiàn)的,利用轉(zhuǎn)換軟件將其轉(zhuǎn)換為OpenGL可讀取的文件格式,采用三角形近似逼近的方法繪制目標(biāo)。

2.2 導(dǎo)彈目標(biāo)飛行模擬實(shí)現(xiàn)

導(dǎo)彈與目標(biāo)的飛行過程模擬是通過保持視點(diǎn)坐標(biāo)不變,移動(dòng)、旋轉(zhuǎn)以及縮放導(dǎo)彈及目標(biāo)模型等方式實(shí)現(xiàn)的。首先確認(rèn)視點(diǎn)坐標(biāo)位置,通過gluLookAt()函數(shù)定義了仿真視點(diǎn)的位置,通過讀取事先開發(fā)的導(dǎo)彈模擬程序的計(jì)算文件獲取導(dǎo)彈與目標(biāo)的位置信息,并利用OpenGL提供的glTranslatef將導(dǎo)彈與目標(biāo)更新的位置坐標(biāo)變化轉(zhuǎn)換到視圖界面中對(duì)應(yīng)的(x,y,z)位置,實(shí)現(xiàn)導(dǎo)彈與目標(biāo)在視景仿真過程中沿著x軸、y軸、z軸平移動(dòng)作,通過glRotatef函數(shù)設(shè)置導(dǎo)彈與目標(biāo)在飛行過程中旋轉(zhuǎn)變換;通過glScale 實(shí)現(xiàn)導(dǎo)彈與目標(biāo)沿著x,y,z軸縮放操作。

2.3 環(huán)境仿真實(shí)現(xiàn)

環(huán)境仿真效果對(duì)視景仿真的逼真性和實(shí)際的仿真顯示效果具有重要影響,場(chǎng)景仿真越接近真實(shí)環(huán)境,對(duì)圖形處理的要求就越高。

1)地形繪制

地形作為自然界中復(fù)雜程度最高的景物,其模擬繪制方法廣受關(guān)注,地形生成可分真實(shí)地形與模擬地形可視化兩類,而本導(dǎo)彈飛行視景仿真對(duì)地形背景要求只需滿足基本感官效果,不必達(dá)到真實(shí)地形的逼真程度,因此,本系統(tǒng)采用了隨機(jī)高程數(shù)據(jù)生成方法來模擬地形。隨機(jī)高程三維地形模擬方法是將三維地形中的地平面分解為網(wǎng)格,根據(jù)網(wǎng)格頂點(diǎn) ( x , z),利用計(jì)算機(jī)生成的隨機(jī)特征點(diǎn)作為地形高度y值,同時(shí)在不同高度值間采用多階曲線擬合方法使形成的地形比較平滑,最后對(duì)地形網(wǎng)格進(jìn)行多重紋理貼圖,形成具有較高逼真性的三維地形。在三維地形繪制中,通過建立頂點(diǎn)位置數(shù)組、顏色數(shù)組及紋理坐標(biāo)數(shù)組方法,減少函數(shù)的調(diào)用及頂點(diǎn)傳遞次數(shù),提高視景顯示的流暢性。

2)天空背景模擬

天空的構(gòu)造為視景仿真提供了極好的感官效果。本文采用構(gòu)建貼有天空紋理的半球形網(wǎng)格方法進(jìn)行天空體的繪制,通過OpenGL中球面坐標(biāo)系建立網(wǎng)格頂點(diǎn)坐標(biāo)f(x,y,z),然后選擇合適的天空紋理映射到網(wǎng)格的方法建立半圓頂形天空模型。由于半球形天空繪制方法形成的頂點(diǎn)數(shù)據(jù)越多,紋理貼圖效果越逼真,霧化效果越均勻,但是頂點(diǎn)數(shù)據(jù)過多會(huì)造成天空背景繪制效率變慢,本文采用半球形網(wǎng)格天空繪制方法生成的32×64個(gè)天空頂點(diǎn)。

2.4 爆炸效果實(shí)現(xiàn)

本文根據(jù)導(dǎo)彈與目標(biāo)模型位置差進(jìn)行碰撞檢測(cè),當(dāng)導(dǎo)彈與目標(biāo)模型位置差小于導(dǎo)彈戰(zhàn)斗部殺傷距離時(shí),確定彈目遭遇,進(jìn)行爆炸效果的模擬,否則導(dǎo)彈未命中。對(duì)爆炸效果的模擬采用了對(duì)象的不同繪制方法,在爆炸前是按照幾何圖形繪制方法繪制導(dǎo)彈,讀取OBJ文件并根據(jù)三角近似逼近的方法繪制目標(biāo);而在導(dǎo)彈擊中目標(biāo)后,爆炸效果繪制分為破裂和碎片飛散兩個(gè)步驟,模型破裂采用三角近似逼近的方法模擬爆炸碎片,將導(dǎo)彈與目標(biāo)分成不同的面片,分散來進(jìn)行繪制的,在爆炸后根據(jù)爆炸原理繪制碎片飛散效果,將導(dǎo)彈與目標(biāo)殘骸向外膨脹,爆炸碎片隨著距離的增加而逐漸衰減,根據(jù)計(jì)算模型對(duì)象的各個(gè)三角形面片在爆炸作用下的新的位置,利用最初的三角形面片的紋理,將爆炸對(duì)象繪制出來,同時(shí)賦予爆炸碎片旋轉(zhuǎn)屬性。

3.結(jié)論

本文利用VC與OpenGL開發(fā)了以某型導(dǎo)彈為例的導(dǎo)彈飛行視景仿真模型,能方便的對(duì)場(chǎng)景中的導(dǎo)彈各部分尺寸進(jìn)行設(shè)置,可通過改變性能參數(shù)來達(dá)到不同型號(hào)的導(dǎo)彈作戰(zhàn)仿真。提供了真實(shí)的三維場(chǎng)景,實(shí)現(xiàn)了導(dǎo)彈的六自由度可視化演示,對(duì)規(guī)劃導(dǎo)彈飛行彈道具有很好的工程應(yīng)用價(jià)值。

[1]胡海,錢江.對(duì)機(jī)動(dòng)突防反艦導(dǎo)彈的防御[J].現(xiàn)代防御技術(shù),29(5): 20-23.

[2]玄一民,李紅亮,宋貴寶.潛艦導(dǎo)彈與航母編隊(duì)攻防對(duì)抗仿真系統(tǒng)設(shè)計(jì)[J].飛航導(dǎo)彈, 2005.

[3]劉劍威.反艦導(dǎo)彈典型攻擊模式及運(yùn)動(dòng)仿真研究[J].指揮控制與仿真,2006.

猜你喜歡
視景繪制導(dǎo)彈
Art on coffee cups
導(dǎo)彈燃料知多少
軍事文摘(2020年14期)2020-12-17 06:27:16
正在發(fā)射的岸艦導(dǎo)彈
放學(xué)后
童話世界(2018年17期)2018-07-30 01:52:02
攔截那枚導(dǎo)彈
vega及其在戰(zhàn)場(chǎng)環(huán)境視景仿真系統(tǒng)中的應(yīng)用
導(dǎo)彈轉(zhuǎn)運(yùn)
全回轉(zhuǎn)拖輪運(yùn)動(dòng)建模與視景仿真
在轉(zhuǎn)變中繪制新藍(lán)圖
基于Vortex與Vega Prime的車輛模擬器動(dòng)力學(xué)與視景仿真
仙居县| 盐山县| 黔东| 梧州市| 泰兴市| 固镇县| 沙河市| 铜梁县| 九寨沟县| 巫溪县| 唐海县| 西平县| 浮山县| 曲阜市| 卢龙县| 绥芬河市| 永定县| 思南县| 迁安市| 耿马| 黄骅市| 三门县| 山西省| 汽车| 深水埗区| 固原市| 新源县| 永寿县| 黄平县| 阿拉善盟| 望谟县| 大庆市| 叶城县| 尼勒克县| 长垣县| 清河县| 平乐县| 米泉市| 温宿县| 井研县| 泸西县|