
コンピューターの性能が向上し,今まで敬遠してきたAI機を楽しめるようになってきました。
そして,Windows10上のFS2004で,AI機を導入して楽しむ方法を整理してみることにしました。
今回は,AI機が表示される仕組みについて,私なりの説明を試みました。
Windows10上のFS2004でAI機を楽しむ方法(1)

AI機とはそもそも何なのか
フライトシミュレーターを動かしていると,どこからか別の飛行機が飛んできます。
また,メイグス飛行場で離陸待機していると,横から別のセスナ機が勝手に横切って離陸したりします。
これらの飛行機が,ネットで省略して「AI機」と呼ばれているAI航空機というものです。
このAI機のことはフライトシミュレーターをはじめた頃から知っていました。
AI機をコントロールするアドオンソフト(フライトシミュレーターに追加する市販プログラム)があることやflightsim.comのライブラリにAI機が多数登録されていることも知っていました。
AI機インストーラーで有名なのは,”World of AI”というフリーウェアです。

“Wold of AI”のトップページ
市販のインストーラーでは,「みんなの空港」というシリーズでAI機を管理するため「ジャストフライト・トラフィック」という製品がありました。
多数の航空機が空港に駐機し,自在に離着陸するというプロモーションビデオも公開されました。

そして,AI機を多数組み込むとフライトシミュレーターの画面更新のフレームレートが下がってしまうという副作用があることも知識として持っていました。
けれども,私はAI機がどういう仕組みで動いているのか知りませんでした。
そして漠然となのですが,アドオンソフトウェアがあるのだから,AI機を制御することはできるのだろうと考えていました。
AI機について導入する気がしなかったのは,副作用であるフレームレートを低下させる現象を避けたかったからです。
では,なぜフレームレートが下がってしまうのでしょうか。
AI機の導入方法を調べてみる間に,その理由がわかりました。
AI機の導入でフレームレートが低下する理由
私のいままでの理解は,AI機がヘルプセンターに表示されている「人工知能が操縦する飛行機である」ということを感覚的に理解しているだけでした。
FS2004の設定で,「航空交通量」のダイアログで「航空交通量の密度」を上げると出現率が上がるというくらいの理解で,関心が低いままでした。

AI機の導入という検索語で探した中で,AI機を導入するとフレームレートが低下する原因について記述してある「FS2004とXPLANE 日記」というブログがありました。

この中で,「AI機をたくさん入れると計算量が増えるのでパソコンへの動作負担が増える」という記載があります。
これが,AI機をたくさん入れるとフレームレートが下がる理由であると理解できました。
「FS2004 と XPLANE 日記」より引用
AI機はシーナリーデータだった
FS2004の中でAI機データがどこに格納されて,どのように表示されるのかを調べたときに,AI機が何なのかが理解できました。
それを教えていただいたのは,「戦闘機で旅客機をエスコート -AI機を自分で設定する」というページです。
「AI機はどうやって飛んでいる?」という見出しの段落は,まさしくAI機の本質を明らかにするものでした。
AI機はどうやって飛んでいる?
FSでは自分で飛ばしている機体以外にも、プログラムが自動生成した飛行機(AI機)が世界を飛び回っています。設定の「航空交通量」の値を大きくすると主要な空港の周りでは良く見かけることができますよね。これらAI機は一見するとランダムに現れるように見えますが、実際にはAI機用時刻表データファイル(トラフィックファイル)というのがあって、これに記されたとおりに飛んでいます。言い換えると、このAI機用トラフィックファイルの中身を書き換えることで、自分の思うようにAI機を出現させることができるというわけです。そのファイルとはずばり、「Scenery」>「World」>「scenery」フォルダにあるtraffic030528.bglです。ただ、このファイルはメモ帳などでは読むことができません。これをいじるには専用のツールが必要になるのですが、ご安心を、ちゃんとフリーウェアが入手できます。(traffic030528.bglを見つけたら念のためバックアップをとっておきましょう)
「〇〇.bgl」というのは,フライトシミュレータのシーナリーを記述するファイルです。
形式は,スタンダード(テキスト)形式とASM(アセンブラ[機械語])形式があります。
つまり,AI機は「人工知能が操縦する飛行機」という表現を使っている,シーナリーファイルのひとつの形式だったということなんです。
複雑なシーナリーデータを読み込めば,シミュレーターのフレームレートが低下することは,フライトシミュレーターを楽しむ者にとって当たり前の事だったというわけです。
AI機を記述するBGLファイルは,ASM形式です。
いやー,ここに至って「traffic030528.bgl」が,私にとって昔懐かしい「MASM(マイクロソフトアセンブラ)」で記述されたファイルだと知りました。
アセンブラ[機械語]ファイルは,テキストファイルを翻訳して解釈する必要がないため,コンピューターがデータを読み込む時のスピードが速くなります。
私が,PC-8801(NECの8ビットパソコン)でいじっていたMASMが生かされていたとは,感慨深いです。
大昔ですが,BASICインタープリタでプログラムを記述し,スピードが要求されるマシン寄りのインターフェースをアセンブラ[機械語]で記述することが当たり前の時代がありました。
多数のAI機を記述したデータを読み込むときに,スピードが必要とされたから採用されたデータ形式なのでしょう。
余談になりますが,今ではMASMはマイクロソフトのページから無償でダウンロードできるようになっています。
MASMを数万円で購入していた時代があったのですが,時代は変わっているんですね。

”http://bytepointer.com/masm/index.htm”から引用
閑話休題。
「traffic030528.bgl」を,操作するには専用のツールが必要です。
その名前は,「Traffic Tools V2.02」といいます。
さしずめ,フライトシミュレータへ組み込む機械語で記述されたプログラムファイルを調整するための,グラフィカルインターフェースを持ったアセンブラということなのでしょう。

“flyawaysimulation.com”から引用
次回は,Wold of AIをはじめとした,AI機導入に必要なプログラムの入手・導入について説明します。
(Windows10上のFS2004でAI機を楽しむ方法(2)に続く)



コメント