[[FrontPage]] > [[FlightGearマニュアル]]
RIGHT:The FlightGear Manual Version 2.10.0
----
このドキュメントは ttp://mapserver.flightgear.org/getstart/getstart-enpa4.html (が本来生成されるべき)の日本語訳です。~
(注:本家mapserverで使用しているTeX4htの環境由来と思われる問題でhtml版の生成途中で途切れてしまい、この部分は無い。http://flightgear.jpn.org/modules/d3forum/index.php?post_id=3834)

#contents


*付録B 着陸: 飛行機から離れる前に少しだけ考える [#nf94dd1b]

**B.1 FlightGearの歴史の略図 [#y264e510]

歴史はつまらない話題かもしれません。しかし、時々FlightGearの歴史を尋ねる人がいます。結果として、私達は短い概論を書く事にします。

FlightGear プロジェクトの起源はネットユーザー間の討論グループが元となり、結果として1996年に David Murr が提案を出しましたが、残念ながら後にプロジェクト(並びにネット)から離脱しました。オリジナルの提案書は今も下記の通り、 FlightGear の webサイトで閲覧可能です。
http://www.flightgear.org/proposal-3.0.1

人々の名前といくつかの詳細は時間とともに変わったとはいえ、その提案の精神は現在まで明らかに維持されました。

実際にコードを書くのは1996年の夏に始まって、その年の末にはグラフィックの作業が終わりました。その時、 Eric Korpela が主にプログラミングをしつつ調整を Berkeley University からしていました。初期のコードは DOS, OS/2, Windows95/NT, Sun-OS の下で Linux同様に実行されました。他の何よりも複雑な、システムから独立した方法でゼロから全てのグラフィック・ルーチンを書いたため、これはとても野心的なプロジェクトだと分かります。

Ericが彼自身の命題を完了させたとき、開発は減速し最終的に1997年の初めに止まりました。この時点において、プロジェクトは死んでいるようでした。そして、メーリングリストにおいてやり取りはほとんどありませんでした。

これを1997年半ばに Curt Olson が University of Minnesota からプロジェクトを再度立ち上げました。彼のアイデアはわかりやすく、同様にパワフルでした:なぜ車輪の再発明をするのか? 違った種類のUNIX上で利用可能ないくつかの自由なフライトシミュレータが実行されていました。これらの一つ、(NASAの Bruce Jackson によって開発された) LaRCsim がこのアプローチに適しているように見えました。Curt は目標のプラットフォーム上でこれらをビルドして実行できるように、これを別個に切り分けていくつかのルーチンを書き直しました。この功績の鍵となったアイデアはシステムから独立したグラフィックスのプラットフォーム、OpenGLを使う事でした。

これに加え、本当に初期のバージョンで基本的なシーナリーデータの選択についての賢い決定をしました。U. S. Geological Survey が発行する衛星データを元にFlightGear のシーナリーが作成されました。これらの地形データは以下から利用可能です。
>
http://edc.usgs.gov/geodata/  (米国) &br;
http://edcdaac.usgs.gov/gtopo30/gtopo30.html (他の国のデータ)&br;
<
これらの自由にアクセスできる地形データと、FlightGearに含まれるシーナリー作成ツールは、誰でも自分自身のシーナリーを作れるようにする重要な特徴です。

この新しい FlightGear のコードは、まだ主にオリジナルのLaRCsimのコードに基づいていて、1997年7月にリリースされました。その瞬間から、このプロジェクトは再び勢いづきました。より最近の開発史のいくつかのマイルストーンは以下にあります。

***B.1.1 シーナリー [#u0f419be]

-テクスチャのサポートは Curt Olson によって1998年春に追加されました。これはリアリティの表現に重要な改良として記録されました。いくつかの高品質なテクスチャが Eric Mitchell により FlightGear プロジェクトに寄託されました。それ以降ずっと別の高品質なテクスチャのセットが Erik Hofman によって追加されました。
-シーナリーとテクスチャのサポートの改良の後、1998年春にFlightGearで飛べなくなるまでのフレームレートの低下に陥りました。この時に利用可能になったハードウェアOpenGLのサポートと、表示する立体物(訳者注:原文ではfrustrum,おそらくfrustumの間違い。ここでは立体物と意訳する)の選別(場面中に見えない部分のシーナリーを無視するレンダリングのテクニック)で、Curt Olsonによってこの問題が解決されました。フレームレートに関して、コードが現在いかなる場合でも最適化されていない事を気に留めておくべきで、それは更なる改善の余地を残しています。
-1998年9月に Curt Olson は U.S の地形モデルの作成を完了させました。現在世界中のシーナリーが以下のクリッカブルマップから利用可能です: &br;
>
http://www.flightgear.org/download/scenery/
<
-後ほど湖、河川、海岸線を含む地理的特徴が加えられることにより、シーナリーは更に改良されました。2001年に滑走路のテクスチャが Dave Cornish によって追加されました。燈火のテクスチャは夜間の視覚的印象を加えます。2001年春にシーナリーデータの安定した発展に対処するため、シーナリーのバイナリフォーマットが導入されました。2001年に Curt Olson によって滑走路の燈火が追加されました。最終的に、William Riley が完成させた世界中のシーナリーファイルの新しいセットを元に2002年夏にDavid Megginsonが文書を準備しました。これはVMap0と呼ばれるデータセットに基づいており、これまで使われていたGSHHSデータを置き換えました。このシーナリーの大きな改良は世界中の大通り、川等をカバーしていると同時に海岸線の精度はそれほど下がるわけではありません。2002年夏以来 FlightGearの基本シーナリーはこれらの新しいシーナリーファイルを元にしています。
-2001年にはシーナリー上の固定物のサポートが加えられ、それにより建物、地上で止まっている飛行機、木をシーナリー上に置けるようになりました。
-2002年夏以来、適切なタイプの地上物と密度に応じた局地的な地表のタイプの世界になりました。主に D. Megginson の仕事のおかげで、これはリアリティの大きな改善を記録しました。
-今日でも努力は続いていて、飛行しながらシーナリーをダウンロードするツールのTerrasyncと共に使うと、裏方の基盤に据えた強力なmapserverとscenemodelsを、ウェブフォームと同じくらいオブジェクトを素早く追加や更新できます。8.50 apt.datフォーマットでライセンスが十分なときにOpenStreetMapのような外部のデータを使うために、シーナリー生成ツールはアップデートされました 

***B.1.2 航空機 [#n9ef54c1]
-1997年秋に HUD (head up display) にMichele America と Charlie Hotchkiss により基本的なコードが加えられ、後にNorman Vine によって改良されました。実際の Cessna 172 では純正では使用できませんが、HUD がシミュレーションでの飛行性能を都合よく報告してくれ、また軍用ジェット機において更なる用途で役に立つでしょう。
-1998年4月に Jeff Goeke-Smithが 基本的なオートパイロットの機首方位保持の改良の貢献をしました。これは後の1998年10月に Norman Vineにより更に開発され、高度保持と地形追従の切り替えを追加する改良がなされました。
-1998年6月に追加された初期の計器パネルのコードは Friedemann Reinhard によって開発されました。残念なことに、このパネルの開発は後に減速しました。最終的に、2000年1月に David Megginson は一からパネルのコードを再構築することを決心しました。これは新しい計器と特徴をパネルに追加するという結果になり、2001年春までのほとんど全ての主要な計器が含まれる結果になりました。簡便なminipanelは2001年夏に追加されました。
-2000年2月にCessna 172 が十分に安定したので、デフォルトの航空機だったLaRCsimのNavionをこれで置き換えました - この動きは大部分のユーザーに歓迎されました。現在は実行時にいくつかのフライトモデルと航空機を選択するオプションがあります。Jon Berndt はより現実的で汎用的でパワフルな設定方法に多くの時間を費やしました。これは JSBSim と呼ばれており、デフォルトの飛行力学モデルをLaRCsimから置き換え、また燃料の揺動、乱気流、完全な飛行コントロールシステム等、シミュレータには無い特徴を含める事を計画しました。また代替として2001年末に、 Andy Ross は YASim (Yet Another Flight Dynamics Simulator) と呼ばれる、使用の単純化を狙って流体力学に基づく別の飛行力学モデルを追加しました。これで我々は 747 , A4 , DC-3 のフライトモデルを獲得しました。あるいは、UIUCの Micheal Selig の周りのグループは数通りの航空機と別のフライトモデルを提供しました。
-2000年春に Curt Olson によって完全に作動する無線スタックと無線機が追加されました。Robin Peel によって巨大な Navaids のデータベースが提供されて以来IFR航法ができるようになりました。2001年秋に David Luff によって基本的な ATC のサポートが追加されました。これはまだ完全な手段(implemented)ではありませんが、既にATIS メッセージを表示することが可能です。2001年末に John Check と David Megginson によって適切に機能するマグネトのスイッチが追加されました。その上、2001年から2002年の間に John と他の人により、いくつかの継続的なパネルの改良がされました。FlightGear は現在 ILS アプローチと Bendix トランスポンダーの機能を利用して飛べます。
-2002 年には FlightGear中で機能的な複数のエンジンのサポートが見受けられます。JSBSim は現在 FlightGear のデフォルトの FDM です。
-2002年春に John Checkとその他の人々の貢献により、安定した"本当の" 3Dパネルのサポートがされました。加えて、David Megginson のおかげで、我々はプロペラのように操縦翼面等を動かせるようになりました。

***B.1.3 環境 [#uf741c88]
-太陽、月と星の表示は長年 PC フライトシミュレータの弱点でした。非常に早期に太陽、月、惑星の正確なモデリングと表示ができるようになったことは、FlightGearの偉業の一つです。これに対応する天文学のコードは、1997年秋に Durk Talsma によって実装されました。
-Christian Mayer は、 Durk Talsma と共同で1999年冬に天候のコードを寄稿しました。これには雲、風、そして雷雲さえ含みます。

***B.1.4 ユーザーインターフェース [#baac9f89]
-1998年6月に、メニューシステムの基礎が別のライブラリ、Portable Library (PLIB) によって埋め込まれました。しばらく何もしてなかった後に、1999年春に初めて動くメニュー・エントリーが生まれました。
-後にPLIBは急速に開発されていきました。1999年春から、広範囲に適用する考えのため Steve Baker により別のパッケージとして配布されています。1999年秋からFlightGearはPLIBを基本的なレンダリングエンジンとして利用しています。
-1998年にはオーディオライブラリといくつかの基本的なエンジン音等、基本的なオーディオがサポートされました。これは後に先述したPLIBに統合されました。1999年10月、このライブラリはジョイスティック/ヨーク/ラダーのサポートが拡張され、リアリズムに関して再び大きなステップをマークしました。2000年秋、異なるジョイスティックを適合させるため、設定オプションが導入されました。2002年夏、 David Megginson によりジョイスティックサポートは更に改良され、xmlジョイスティックファイルをベースに自己検出機能が追加されました。
-1999年秋に Oliver Delise と Curt Olson により、ネットワーク/マルチプレイヤーのコードの統合が始まりました。この努力はネットワーク上でFlightGearをいくつかののマシンで同時に実行し、イントラネットかインターネットのどちらでも、フライトプランナーを2台目のマシンで走らせてそれを組み合わせたり、等々。2001年の間にネットワーク上でFlightGearを遠隔操作するためのいくつかのアプローチが現れました。特に 「Atlas」 ムービングマップのプログラムのサポートが付け加えられました。他にも、2001年後半に Curt Olson により組込HTTPサーバが開発され、現在は外部プログラムのためのプロパティマネージャーの役割をします。
-フライトシミュレータの中で手動で視点を帰ることは常にある意味で「非現実的」ですが、それにもかかわらず特定の状況で要求されました。A possible solution was supplied by Norman Vine in the winter of 1999 by implementing code for changing views using the mouse. Alternatively, you can use a hat switch for this purpose, today.
//うまく日本語に訳せなかったのでどなたか編集おねがいします by sambar
-フライトシミュレータの中で手動で視点を帰ることは常にある意味で「非現実的」ですが、それにもかかわらず特定の状況で要求されました。1999年冬、 Norman Vine によりマウスを使って視点を変更できるコードがを実装する事によって、受け入れ可能な解決策が供給されました。今日では、代わりにこの用途にハットスイッチを使うこともできます。
-2000年秋に David Megginson によりプロパティマネージャが実装されました。これは、UNIX/Linux環境下で .fgfsrc と呼ばれ、Windows環境下でsystem.fgfsrc と呼ばれるファイルを解析することができます。この簡素なASCII ファイルは増大していく入力オプション、特にジョイスティック設定を提示するのに便利だと証明されました。これにより示された便利なコンセプトは、2001年春以来、主に David Megginson と John Check の仕事のおかげで、もはやジョイスティック、キーボード、パネルの設定はハードコードをせずに *.xmlファイルでされるようになりました。

発展の間、いくつかのコードの再編の努力がありました。様々なサブシステムのコードがパッケージに持ち込まれました。その結果、現在コードは以下のように整理されます:

基本のグラフィックスエンジンは OpenGLで、プラットフォームから独立したグラフィックスライブラリです。OpenGL をベースに、可搬ライブラリの PLIB が基本的なレンダリング、音声、ジョイスティック、等のルーチンを提供します。PLIBをベースにしたSimGearは、シーナリーの構築と、フライトシミュレーターのために必要な全ての基本的なルーチンを含みます。SimGearの上に、 (i) FlightGear (シミュレータ自身)と、 (ii) TerraGear (シーナリー構築ツール) があります。

これは決して詳細な歴史では無く、そしておそらく重要な貢献をした何人かの人は無視されているでしょう。上記の他にも内部構造に関する数多くの仕事で貢献をした人は、 Jon S. Berndt, Oliver Delise, Christian Mayer, Curt Olson, Tony Peden, Gary R. Van Sickle, Norman Vine, その他の方々です。&br;
プログラムに添付されている Thanks ファイル同様に、より包括的な貢献者のリストは Chapter B で見つけることができます。 また、FlightGear のwebサイトに含まれる下記のページは、顕著な開発マイルストーンの全ての読む価値がある詳細な歴史です。&br;
>
http://www.flightgear.org/News/
<

----
作業メモ
- 新規作成 2013/05/17 sambar
- B.1.1まで完了 2013/05/18 00:25 sambar
- B.1.3まで完了 2013/05/19 sambar
- B.1.4まで完了 2013/05/22 sambar


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS