夏亮 馮玉博
(中國人民解放軍92728 部隊 上海市 200436)
在武器裝備研制中引入虛擬現實仿真技術,預期可以大幅消減武器裝備的研制成本,壓縮研制時間,降低研發費用,具有重大的實際意義[1]。隨著航母的發展,艦載機作為航母搭載的主要作戰力量,在現代戰爭中發揮著威懾和打擊敵人的重要作用。不過在艦載機訓練過程中需要大量消耗大量的人力物力,耗資太大。在此背景下,利用Vega 或者OpenVS 等軟件開發虛擬現實視景仿真系統來進行艦載機的模擬起飛訓練,作為艦載機起飛流程制定或者培訓教學提供強有力支撐和更為可靠的實驗依據[2]。本文主要對艦載機起飛視景仿真中的關鍵技術,包括模型建立、DOF 設定以及多視角多通道等技術進行介紹。
本文實現的是對艦載機起飛執行任務的全過程進行視景仿真。設置仿真事件流程如圖1。
以上為仿真事件全過程,在仿真過程中一方面界面中通過多個通道進行全面的信息展示,另一方面操作人員也可以通過人機交互來實現從不同的視角對艦載機進行觀察。
要想滿足高精度、高逼真度的要求,應建立諸如航母、艦載機等數字仿真模型,并構建相應的三維場景模型,便于在系統內部實現圖形仿真與數字仿真模型之間的通信。但需要注意的是,圖像仿真時,需將實時渲染技術應用于圖形仿真的過程中。目前在建模軟件與仿真平臺中,Creator 建模工具及Vega 可視化三維視景仿真軟件更適合應用于虛擬現實建模,因此本次建模、仿真,選取上述兩個工具。
MultiGen-Creator 作為實時三維建模工具,在逼真度和優化效果方面,都具有較高優勢,適用于對精度要求較高的實時3D建模中,同時也使用與交互式游戲、城市仿真建模等處。它擁有針對實時應用優化的OpenFlight 數據格式,強大的多邊形建模、矢量建模、大面積地形精確生成功能,以及多種專業選項及插件,能高效、最優化地生成實時三維(RT3D)數據庫,并與后續的實時仿真軟件緊密結合[3]。
Vega 一種高性能的開發環境,用于虛擬現實程序開發和實時仿真環境建立。不僅可以實現基礎的虛擬場景管理與驅動控制,對于復雜的視覺仿真、交互式三維環境構建等功能也能實現。Vega包括完整的C 語言應用程序接口API、交互性好的圖形環境界面Lynx、大量的相關實用庫函數和一批有選擇的功能模塊[4]。Vega 優化了源代碼編程,更便于軟件后期維護與管理,有利于優化軟件的實用性能,可有效提高軟件工作效率。

圖1:仿真事件流程圖

圖2:三維模型
首先創建模型數據庫,運用實時可視化三維建模軟件系統,對涉及的航空母艦、艦載戰斗機等模型數據進行渲染和計算,力求在虛擬場景中如實反映所有的實物,并與外部輸入輸出信息進行及時交互,為獲得較為滿意的仿真運行效率,就必須提高模型數據庫在實時仿真系統中的流暢性和運行速度,調整和優化模型數據庫[5]。由于涉及多個復雜的模型,使得仿真應用中的模型多邊形數量急劇增加,因此三維仿真建模的關鍵就是優化模型數據,盡可能提高優化程度。
2.1.1 模型優化的原則
在三維仿真模型中,數據庫內的多邊形數量與用戶視覺能力息息相關,可以簡單的理解為多邊形數量越多越能滿足用戶的視覺需求,同時也會給系統運行帶來負荷。相反的,多邊形數量越少,系統的運行壓力越小,但是不能滿足用戶的視覺要求。在仿真建模過程中,就是要在滿足視覺要求前提下盡量減少多邊形數量,這是模型優化的原則和要求[4]。
2.1.2 模型優化的方法
對模型進行優化,不能僅依靠單一的方法進行,通過調整模型數據庫的層次結構、運用LOD 技術,并將模型對象實例化,將模型細節部分采用紋理的方式修飾,刪減掉多余的多邊形。
2.1.3 建立的優化模型
根據上述優化原則和方法建立了艦載直升機、艦載機和航母等模型。部分模型如圖2所示。
為了使操作人員盡可能全面的觀察艦載機起飛時的姿態,為提高展示效果,以多通道、多視角的方式加以展示,以不同的通道對應指定的視角。在顯示器上同時顯示3 個不同通道作為主畫面,也可以通過鍵盤方便的控制和切換觀察的方位,利用更多的通道進行觀察,主通道是以艦橋指揮臺為視角進行觀察的通道,左上角是駕駛艙內視角通道,右上角是俯視航母的全景視角通道,具體操作:
(1)在Vega 提供的Lynx 面板下,選擇“Channels”,建立8個通道,根據運行要求選擇“channels position”,將通道設置在系統窗口的初始位置上。
(2)選擇“Observers”,建立7 個觀察者,并分別與7 個通道相對應,為每個觀察者選擇觀察目標,7 個視點分別為:高空視角對航母全局進行俯視觀察、遠處對航母進行全景觀察、艦艏視角對艦載直升機進行跟蹤觀察、機庫視角對艦載機牽引出庫進行跟蹤觀察、艦橋后部視角對艦載機在暖機位待命進行觀察、艦橋前部視角對艦載機起飛進行觀察,以及座艙內視角通過平顯對艦載機飛行狀態進行觀察[5]。
(3)通過對Vega API 編程利用vgChannel*tank_chan 函數定義通道,再調用vgFindChan 函數獲取實例中的通道,通過switch(key)函數獲取鍵盤信息,最后用vgChanViewport 函數來進行相應的消息處理,設置指定通道全屏顯示。
在視景仿真時,為了實現艦載機機翼折疊和展開及飛行甲板檔流板的升起,在三維建模時需要利用DOF 技術對相關機體結構進行設計,使得模型對象具有活動能力DOF 節點來控制它的所有子節點按照預先設置的自由度范圍,進行位移或者旋轉。
DOF 技術就是Degree of Free 自由度,模型活動能力在MultiGen-Creator 軟件中是通過DOF 節點來定義實現的,具體方法如下:
(1)創建模型各個關鍵部位的DOF 節點;
(2)將艦載機的可折疊機翼部分節點和檔流板節點設置為DOF 節點的子節點;
(3)使用“Local-DOF/Position DOF”命令分別在艦載機機翼折疊處和檔流板旋轉處創建子坐標系;
(4)通過“Local-DOF/Set DOF Limits”命令來設置各個部位的DOF 節點自由度范圍,各節點分別設置為Rotate 屬性,并設置相應的旋轉角度;
(5)使用“Local-DOF/DOF Viewer”菜單命令,檢驗模型數據庫中所有DOF 的應用效果。
操作人員的操作情況是通過飛行動態平顯頁面來實現飛行視景信息的交互傳遞,操作人員以平顯數據為參照,調整操作精度,實現觀察視點的有效控制,便于全面觀察場景。
在座艙平顯的模型層次數據庫中引入自由度節點、開關節點、動態文本節點以及剪切面等相關的動態元素,通過在Vega 環境中調用相關動態元素的驅動函數,從而實現座艙平顯模型數據的動態變化與實時仿真。
本文利用Creator 和Vega 軟件直觀的展示艦載機起飛過程,實現艦載機起飛視景仿真。通過視景驅動可以看出,仿真是成功地。建立的航母、艦載機等模型逼真準確;DOF 技術很好的實現了艦載機的機翼折疊和檔流板的收放;利用Vega 軟件建立的海洋環境通過虛擬場景的渲染可以很好的達到沉浸效果;多通道、多視角技術和飛機屏顯模擬技術也讓用戶可以從不同角度、全方位的觀察艦載機起飛的全過程和飛行的數據參數。該仿真人機交互功能正常。所做研究對艦載機起飛訓練和教學提供很好的平臺,并對其他可視化仿真也具有一定的參考價值。