由於虛擬實境為了擬真,需要大量的多邊形來模擬物體,需要消耗龐大的計 算時間,縱使目前市面上已有多款影像加速卡可用來加快立體圖形的顯像工作,
但是模擬迴圈倘若必須處理很多工作,模擬程式的執行效率依舊顯得不足。為解 決上述龐大的計算量,本子題主要在探討如何串接整個系統的網路溝通模式,以 解決計算負載過重、運算以及傳輸速度延遲的問題,因此本子題採用美國國防部 所提出高階分散式網路架構(High-Level Architecture,HLA)之執行架構(Run-Time Infrastructure,RTI)作為底層通訊架構,並且實際以數台個人電腦構成模擬器電 腦系統,運用平行運算的方式促使整個模擬器電腦系統達到即時的要求(顯像頻 率為每秒 20 至 30 個畫面),進而符合美國飛航單位(Federal Aviation Administration, FAA)標準,本子題以 HLA 技術為探討對象,逐步對規格、內容定義,並提出程序 步驟來輔助設計、驗證,以建構高階模擬環境。最後,本子題為了實現多人、多 機型混和模擬訓練系統,建立一飛機資料庫系統使得整個虛擬實境可提供多種的 飛機選擇彈性,更進一步探討網路效能分析,經由實驗測試結果發現以 HLA 技術 為架構之網路傳輸效能遠比傳統常用之網路傳輸效能還要好很多。
5.1 高階分散式網路架構之簡介
高階分散式網路架構(High-Level Architecture,HLA)針對模擬訓練而制訂,
提供給開發者一個即時而低流量的模擬環境,以下分就「設計動機」、「基本組 成」、「歷史背景」、「開發工具」、「專有名詞」加以說明。
5.1.1 設計動機
制訂 HLA 的最主要動機是希望能為各種模擬平台提供一套共通的網路架構標 準。美國國防部(Department of Defense,DOD)模式與模擬局(DMSO)打從 1994 年起,分四個時期推廣高階分散式網路架構,以延續以前模擬網路(Networking Simulation,SIMNET)以及分散式互動模擬(Distributed Interactive Simulation,
DIS)的發展。關於美國國防部為何要發展 HLA 的動機曾於”High Level Architecture for Simulation”一文中提及【5-1】
單一模擬不可能滿足所有的應用與不同的使用者
5.1.2 基本組成
HLA 由三個部分組成,分別為「HLA 介面定義(HLA Interface Specification)」、
「HLA 物件模型範本(HLA Object Model Template)」、「HLA 規則(HLA Rule)」。
其中,HLA 介面定義(HLA Interface Specification)描述由執行時資訊結構(Runtime Infrastructure,RTI)所提供的服務,並確認每一個 Federate 都有提供 Callback Function。而 HLA 物件模型範本(HLA Object Model Template)定義了 Federation / Simulation / Management Object Model 的格式,開發者可運用這些共通的物件模 型來記錄資訊。
5.1.3 歷史背景
HLA 算是一個還在發展中的網路架構,是由美國模式與模擬局(DMSO)所 發起,其發展歷史年表如下所列:
(1) 1994 年美國先進國防科技研究署(Defense Advanced Research Project Agency,DARPA)與業界簽署三項定義 HLA 的合約。
(2) 1995 年 3 月 31 日由美國模式與模擬局(DMSO)贊助,Architecture Management Group 發表 HLA 的基本定義草稿。
(3) 1996 年三月-與 IEEE DIS Workshop 合作,成為 IEEE 標準。
(4) 1996 年八月-完成 HLA 的基本定義標準。
(5) 1996 年十月-HLA 被美國國防部認可為模式模擬的標準架構。
5.1.4 開發工具
「工欲善其事,必先利其器」,藉著優良的輔助工具,可讓程式分析與設計 的難度大幅降低,本子題所採用的 HLA 開發工具如下所列舉:
(1) RTI 函示庫:
DMSO(Defense Modeling and Simulation Office)網頁上有提供一套免費 的 RTI 函示庫,但必須提出申請才能下載,支援 Windows、Linux、IRIX。
(2) OMTD 物件模型開發工具:
DMSO(Defense Modeling and Simulation Office)網頁上有提供一套免費 的物件模型開發工具,但必須提出使用申請,僅支援 Windows。其功用是提 供一個視窗化的介面,讓開發者可以輕鬆地設計 HLA 所定義的物件模型。
(3) 程式編譯器:
美國國防部所提供的 RTI 函示庫僅支援特定的編譯環境,在 windows 環 境下,須使用 Microsoft Visual C,而在 Linux 環境下則使用 GNU C Compiler
(GCC)。
(4) Rational Rose 2000:
Rational Rose 公司有一套 UML 物件導向開發工具,可先用圖形的方式設 計程式的流程、結構、使用者案例…等。本研究在程式分析初期便是使用此 軟體協助設計相關的物件導向程式類別。
5.1.5 專有名詞
由於 HLA 是由美國國防部所制訂的標準,因此很多軍事用語或專有名詞可能 不是那麼容易理解,經翻譯之後也很難貼切地表示其原始的意義,故在此簡介幾 個接下來會在不斷出現的專有名詞。
(1) Federation
Federation,名詞,中譯為『聯盟』,包含三部分:Federate、Runtime Infrastructure (RTI)、Runtime Interface,是 HLA 所定義的最大模擬單位,
指由眾多模擬程式所組成的集合體。其成員介紹如下,其組成如圖 5-1-1 所示。
(2) Federate
Federate 原意若作形容詞中譯為『聯合的』;及物動詞中譯為『使…聯合』。 但在 HLA 的用語中,為名詞,代表 Federation 的成員,泛指任何一種形式的 模擬程式,倘若依照種類可細分為:電腦模擬(Computer Simulation)、載人 模擬器(Manned Simulator)、資料監控程式(Passive Viewer)、資料蒐集程 式(Data Collector)、操作介面(An Interface to Live Player)五種。
(3) Runtime Infrastructure(RTI)【5-2】
Runtime Infrastructure,中譯為『執行時資訊結構』,縮寫為 RTI。根據 RTI 官方文件的解釋,RTI 是一種分散式作業系統(Distributed Operating System),而所有 Federate 的資訊傳遞都必須透過 RTI 協助。RTI 定義了許多 函示和服務。
(4) Runtime Interface
Runtime Interface 中譯為『執行時介面』,定義 Federate 與 RTI 間的溝通 介面。