FlightGear
FlightGear(フライトギア)は、オープンソースで開発され無料配布されている、クロスプラットフォームのフライトシミュレータである。
ボーイング787飛行中の様子 | |
開発元 | FlightGear Developers & Contributors |
---|---|
最新版 |
2020.3.6
/ 2021年1月24日 |
リポジトリ | |
使用エンジン |
|
対応OS |
32-bit & 64-bit Windows Linux Mac OS X FreeBSD Solaris または IRIX (OpenGL & 3D アクセラレーター必要) |
種別 | クロスプラットフォーム・フライトシミュレータ |
ライセンス | GPL |
公式サイト |
www |
歴史
編集1990年代、Curtis Olsenらは、無料で提供される2Dのフライトシミュレーションの開発を進めていた。それが形となったのは1996年であったが、当時はOpenGLに未対応であり、3Dのフライトシミュレーションでは無かった。しかし、2Dであることへの不満などから、1997年には3Dグラフィックを用いたフライトシミュレーションの開発に転じ、これが現在のFlightGearの原型となっていた。2006年4月5日には0.9.10、2007年12月17日には1.0.0、2008年12月22日には1.9.0、2010年2月25日には2.0.0、2013年2月17日には3.0.0、2020年には2020.4.0と、大きなバージョンアップを行っている。
概要
編集機能
編集FlightGearでは、全世界のシーナリーを開発・配布しており、ほぼ全世界の空港が使用できる。0.9.10からは、空母ニミッツも使用可能となっている。Windows版・Mac版に同梱されているシーナリーはアメリカ合衆国のサンフランシスコとその周辺地域のみに限られており、後から配布サイトからシーナリーを追加する必要がある。Linuxでビルド済みパッケージを利用する場合、配布者によって「本体」と「ベースパッケージ(シーナリー+機体)」である場合と、両者を一つのパッケージで提供している場合がある。
航空機も同様で、初期データは限られたものとなっている。FlightGearでは航空機データは、民間機を中心に開発されているが、近年は軍用機やヘリコプターも増えつつある。しかし、ドッグファイトやコンバット機能などは装備されていない。ヘリコプターのフライトモデルはYASimを改造したものなどがあるが、現在はまだベータとなっている。
マルチプレイモードもあり、Google マップを使用した航空地図で飛行状況を確認できるようになっている。1.0.0からは、他機とのチャットなどによる交信も可能となっている。
また、1.0.0からは空中給油が標準で可能となっている。2008年には山火事消火アドオンWildfireも開発された。1.9.0からはマルチプレイ用の航空管制用の「機体データ」が作成された。ただし、他のプレイヤーが管制に従うとは限らず、またAI機の管制もできない。
開発
編集FlightGear本体は、C++を中心とした言語で記述されている。3DグラフィックスはOpenGLを使用しており、1.0.0まではライブラリにPLIBを採用していた。しかし、1.9.0からはOpenSceneGraphに変更された。また、nasalスクリプトをサポートしており、機体の電装品の動作や、先述の空中給油、Wildfireなど、広範囲に利用されている。
航空機やビルディングなど3Dモデルのデータは、Blender、AC3D等を利用して、AC3D形式(.ac)で作成されている。またビルディングなど一部分はSketchUpを利用して作成される事もある。
また、上記の3Dモデルに貼り付けるテクスチャは、PLIBを採用していた1.0.0まではrgb形式に限られていたが、OpenSceneGraphを採用した1.9.0からはpng等も利用可能になった。
もともとFlightGear本体の開発は、プラットフォームごとで大部分が共通した機能で行われている。しかし、Mac版においては、もともとのバージョンの上、更にアップグレードが行われ、順次公開されている。
フライトモデル
編集FlightGearの航空機は、フライトモデルと呼ばれる規則的な機体スペックを入力して作成されている。FlightGearで使用される主要なフライトモデルは、以下の4種類である。
- YASim - 2002年の0.7.9から導入されたフライトモデル。幾何学シミュレーションによって構成される。現在は半分以上がYASimを使用して開発されている。
- JSBSim - YASimとは対照的に、様々な引く結果の数値を入力して構成されるフライトモデル。より現実的な飛行を見せるが、入力されていない値での高機動飛行すると、非現実的な飛行に陥ることがある。1.9.0(正確には、2008年7月9日以降の開発版)では、気球や飛行船など、「空気よりも軽い気体」のシミュレーションも行えるようになった。
- UIUC - イリノイ大学で展開されたフライトモデル。
- UFO - 空飛ぶ円盤を再現する。飛ばすことそのものよりも、「マルチプレイヤーで他の機体の飛行を眺める」「地上オブジェクトを置く場所の緯度・経度を正確に調べる」等のために利用されている。[要出典]
過去には、LaRCsim、balloon等のフライトモデルが使用されていたが、UFO以外の上記3種に置き換えられ現在ではあまり使用されない。[要出典]