FlightGear(フライトギア)は、オープンソースで開発され、無料で配布されているクロスプラットフォームのフライトシミュレーターです。世界中の風景や空港、さまざまな航空機を再現し、高度な
フライトシミュレーションを体験できます。
歴史
FlightGearの開発は
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は、そのオープンソースの性質から、世界中のユーザーによって開発された様々なコンテンツを利用できます。以下に、主な機能について説明します。
機能
- - シーナリー: 世界中の風景データが開発・配布されており、ほぼ全ての空港が利用可能です。初期状態ではアメリカのサンフランシスコ周辺のみが収録されていますが、追加で世界中のシーナリーをダウンロードできます。空母ニミッツも利用可能です。
- - 航空機: 民間機を中心に、軍用機やヘリコプターなど多種多様な航空機が利用可能です。ただし、ドッグファイトなどのコンバット機能は搭載されていません。ヘリコプターのフライトモデルはYASimを改造したものが利用されています。
- - マルチプレイモード: オンラインで他のプレイヤーと一緒にフライトを楽しむことができます。Googleマップを利用した航空地図で、他のプレイヤーの位置を確認することも可能です。1.0.0からは、チャット機能も実装されています。
- - その他の機能: 空中給油が標準で可能であり、山火事消火アドオンなども存在します。マルチプレイ用の航空管制機能も実装されていますが、AI機の管制はできません。
開発
FlightGear本体は、
C++を中心に開発されています。3Dグラフィックスには
OpenGLが使用されており、バージョン1.9.0からは描画ライブラリとして
OpenSceneGraphが採用されました。また、機体の電装品や
空中給油などの動作には、nasalスクリプトが利用されています。
3Dモデルは、
Blenderや
AC3Dなどのソフトウェアで作成され、
AC3D形式(.ac)で保存されます。テクスチャは、当初はrgb形式のみでしたが、png形式なども利用可能になりました。
プラットフォームごとの差は少なく、共通の機能が多く採用されていますが、Mac版は独自にアップグレードが進められています。
フライトモデル
FlightGearの航空機は、フライトモデルと呼ばれる機体のスペックデータに基づいて作成されています。主なフライトモデルには、以下の4種類があります。
- - YASim: 2002年のバージョン0.7.9から導入された幾何学シミュレーションによるフライトモデルです。現在は、半数以上の航空機がYASimを利用して開発されています。
- - JSBSim: 様々なパラメーターを入力して構成されるフライトモデルです。現実的な飛行挙動を再現できますが、入力されていない値での高機動飛行では非現実的な挙動を示すことがあります。気球や飛行船など、空気より軽い気体のシミュレーションも可能です。
- - UIUC: イリノイ大学で開発されたフライトモデルです。
- - UFO: 空飛ぶ円盤を再現するフライトモデルです。主に、マルチプレイで他の機体の飛行を観測したり、地上のオブジェクトの位置を調べたりするために利用されます。
過去にはLaRCsimやballoonなどのフライトモデルも利用されていましたが、現在では上記3種に置き換えられ、あまり使用されていません。
外部リンク