Saitek Pro Flight™ Instrument Panel(以下FIP)をカスタマイズして好きなゲージを表示しよう、というお話。
対気計なら簡単にできますよ。
http://www.saitek.com/uk/prod/fip.html
ほかにも有志が作った便利ツールでこんなことをするお話とか。
何これ、ですって?
目次
何これ?
今時)320x240ドットの3.5インチディスプレイに、8つのボタンと2つのダイアルを搭載したハードウェアです。
FSXやP3Dと通信してゲージの内容を手元に表示したりできます。もちろん、ダイアル操作を入力にしてゲージを操作する事もできます。
よくこういうのにつかわれているやつです。 でも、一つ二つでも便利なんですよ。
ドライバとソフトウェアを導入した時点で気圧高度計や方位計など10を越えるゲージが登録されているので、コンピュータに装着してシミュレータを起動するだけで使い始めることが出来ます。
ところで、Saitekが用意してくれている対気計は以下の二つです。
基本のものと、C172のもの。
後者は標準のソフトウェアには含まれていないので、ここから入手する必要があります。
http://www.saitek.com/uk/blog/index.php/3-new-cessna-flight-instrument-panels-to-download
でも残念ながら私の愛用しているC185のものはありません。 対気速度を見るだけなら上記のものでもいいのですが、V Speedが違うのでこのままでは少々使いにくい。
C185の対気計を移植した
じゃけん作りましょうね~、ということでやってみたところ、シミュレータ内のデータを割と簡単に移植できました。
なのでこの記事はその備忘録なのです。
FIPのゲージカスタマイズ
お知らせ
メーカーサポートがない行為なのでやるなら自己責任で。 編集するファイルは*必ず*バックアップを取りましょう。前提条件
私の環境は以下の通りです。
OS: Windows 7 64bit FIP
Driver: 7_0_47_1 FIP
Software: 7_0_47_1 Simulator: Preper3d 2.5
概要
新しいゲージの表示、新しいゲージの作成、の二段階で行います。
新しいゲージを表示する方法は、公式の配るファイルに内包されています。 http://www.saitek.com/uk/blog/index.php/3-new-cessna-flight-instrument-panels-to-download
下でも解説します。
新しいゲージは、FSX/P3Dのxml gaugeを変換/移植することができました。 自分で用意する人は、参考程度に。
用意するもの(対気計の場合)
- ゲージ背景の画像 (240x240)
- ゲージの針の画像 (背景に準ずる)
- ゲージ読み込み用のxml
- ゲージ用のxml
ゲージの仕組みはおそらくFSX/P3Dのxmlゲージと同じで、複数の画像を重ね合わせてxml書式に応じて動かしているようです。 対気計は可動部は針だけなので、画像もふたつで足ります。
ゲージ画像
FIPの解像度が320x240なので、このサイズに収める必要があります。
縦に合わせて240x240がいいでしょう。 自動で拡大縮小してくれる機能はないようなので、事前に画像編集ソフトなどでこの大きさにしておいて下さい。 形式はbmpです。
目当てのゲージがシミュレータ内のxml gaugeだった場合は幸運です。
Prepar3D v2\gauges にあるcabの中から拝借したり、 Prepar3D v2\SimObjects\Airplanes 以下の購入した飛行機から借りたりできるかも知れません。
そうでなければ自力で作成する必要があります。 320x320のbmp画像を用意しましょう。
用意した画像はここに配置します。
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\Gauges\1024
私はこの名前で用意しました。
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\Gauges\1024\C185_Airspeed_Background.bmp
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\Gauges\1024\C185_Airspeed_Needle.bmp
ゲージ読み込み用のxml
新しいゲージを表示するには、次のファイルを編集します。
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\SaiFlightSimX.xml
<GaugeList>の中に、自分の<Gauge>を足しましょう。 私はこんな感じのを足しました。
<Gauge Timeout="100" RootFolder="Relative" File="Gauges\C185_Airspeed.xml">
<Button Id="1" Name="" Event=""/>
<Button Id="2" Name="" Event=""/>
<Button Id="3" Name="" Event=""/>
<Button Id="4" Name="" Event=""/>
<Button Id="5" Name="" Event=""/>
<Button Id="6" Name="" Event=""/>
</Gauge>
ハイライトしているところは、自分で作るゲージの名前に変更します。
ゲージ用のxml
FIPの書式をSaitekに問い合わせた人によれば、Saitekはゲージの仕様を公開しないとのことです。
実際の編集は推測と試行錯誤に頼るしかありませんが、標準で導入されているゲージをいくつか参照する限り、まずFSXのXML gaugeと同じでしょう。
FSX: https://msdn.microsoft.com/en-us/library/cc526953.aspx
移植のやり方(対気計)
FIPのゲージがXML gaugeなら簡単に移植できます。 とはいえできるだけ標準のものに合わせておいたほうが無難ですから、ソフトウェアに含まれている対気計ファイルを改造して使わせて貰いましょう。
次のファイルをコピーして好きな名前に変更します。
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\Gauges\Airspeed.xml
私はこう変えました
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\Gauges\C185_Airspeed.xml
エディタで開いてみると……
<?xml version="1.0" encoding="utf-8"?>
<Gauge Name="Airspeed Indicator" Version="1.0">
<Image Name="Airspeed_Background.bmp" ImageSizes="240,240,240,240"/>
<Element> <Position X="120" Y="120"/>
<Image Name="Airspeed_Needle.bmp" ImageSizes="109,15,109,15">
<Axis X="9" Y="7"/>
</Image>
<Rotate>
<Value Minimum="0" Maximum="360">(A:Airspeed select indicated or true,knots)</Value>
<Failures>
<GAUGE_AIRSPEED Action="Freeze"/>
</Failures>
<Nonlinearity>
<Item Value="0" X="120" Y="20"/>
<Item Value="40" X="135" Y="36"/>
<Item Value="130" X="205" Y="144"/>
<Item Value="220" X="89" Y="199"/>
<Item Value="360" X="104" Y="36"/>
</Nonlinearity>
</Rotate>
</Element>
<Element>
<Position X="112" Y="112"/>
<Image Name="Airspeed_Center.bmp" ImageSizes="16,16,16,16"/>
</Element>
</Gauge>
ばっちり読めます。 やはりXML gaugeそのまんまです。
ゲージ名や背景に使う画像の変更
<Gauge Name="Airspeed Indicator" Version="1.0">
<Image Name="Airspeed_Background.bmp" ImageSizes="240,240,240,240"/>
(中略)
<Image Name="Airspeed_Needle.bmp" ImageSizes="109,15,109,15">
ImageSizesの書式は、”x,y,x2,y2”です。FIPの場合は同じ数値を入れるべきです。 私の場合はこうなりました。
<Gauge Name="Cessna185 Airspeed Indicator" Version="1.0">
<Image Name="C185_Airspeed_Background.bmp" ImageSizes="240,240,240,240"/>
(中略)
<Image Name="C185_Airspeed_Needle.bmp" ImageSizes="109,9,109,9">
ゲージのとる値の変更
<Value Minimum="0" Maximum="360">(A:Airspeed select indicated or true,knots)</Value>
単位はktsですので注意して下さいね。 私の場合はこうです。
<Value Minimum="0" Maximum="185">(A:Airspeed select indicated or true,knots)</Value>
針の位置指定
<Nonlinearity>
<Item Value="0" X="120" Y="20"/>
<Item Value="40" X="135" Y="36"/>
<Item Value="130" X="205" Y="144"/>
<Item Value="220" X="89" Y="199"/>
<Item Value="360" X="104" Y="36"/>
</Nonlinearity>
ざっくり説明すると、対気計がある値(Value)を示した時に、針が何処(X,Y)を指すかを示しています。
上記の記述だと、
0ktsのときに、Xが120(画像の左右まんなか)、Yが20(ゲージの輪の頭)
220ktsのときに、Xが89(やや左より)、Yが199(真ん中より下)
こんなかんじに線を引いて、赤い点の座標を調べるとうまく行きます。
私の場合はこうです。
<Nonlinearity>
<Item Value="0" X="122" Y="0"/>
<Item Value="40" X="173" Y="28"/>
<Item Value="60" X="220" Y="64"/>
<Item Value="80" X="235" Y="134"/>
<Item Value="100" X="200" Y="205"/>
<Item Value="120" X="121" Y="238"/>
<Item Value="140" X="51" Y="206"/>
<Item Value="160" X="18" Y="148"/>
<Item Value="180" X="15" Y="87"/>
<Item Value="185" X="12" Y="68"/>
</Nonlinearity>
まんなかのぽっち
私は不要なので消しちゃいました。<Element>
<Position X="112" Y="112"/>
<Image Name="Airspeed_Center.bmp" ImageSizes="16,16,16,16"/>
</Element>
ゲージの配置
こうして用意したxmlは、先に説明したように以下のフォルダに配置します。
C:\Program Files (x86)\Saitek\ProFlight FSX Plugin\Gauges
表示とテスト
ファイルを全て配置したらシミュレータを起動します。
SaiFlightSimX.xmlの記述が正しければ、上下ボタンで切り替えていくと作ったゲージが表示されるはずです。
ゲージが表示されたらおめでとうございます。 シミュレータを開始して、40ktsのとき、80ktsのとき、と針の位置が正しいか画面内のゲージと見比べましょう。
FIPはシミュレータを停止してると反応しません。FIPのゲージを動かす為には、P連打するなりしてシミュレータを動かす必要があります。
トラブルシューティング
- 切り替えても自作のゲージが出てこない
SaiFlightSimX.xml が怪しいです。
記述の挿入箇所、記述のファイル名が正しいことを確認します。
- ゲージは出るけど真っ黒/表示が変
背景画像の配置場所か、画像ファイルが怪しいです。
240x240であること、bmpであること、正しい場所に保管したこと、xml内の名前が正しいことを確認します。
- 針の位置がおかしい
ゲージのxmlが怪しいです。
Nonlinearityタグの中身をもう一度確認します。
■有志のツール(FIP Toolkit + FIP Custmizer)
Alexey Podrezov氏の手になるツールです。 これらを使うと、FIPに操作可能なGPS(!)や切り替え可能な画像ファイルを表示することができます。 (update 2016/01/23 バージョンアップに対応)
http://www.finnov.net/~wierzbowsky/saitek/fip_toolkit_110.zip
http://www.finnov.net/~wierzbowsky/saitek/fip_customizer.zip
Windowsに表示した画面をFIPにコピーしつつ、ボタンでシミュレータに命令を送ることで操作を可能にするツールです。
シミュレータの画面を直接表示できる訳ではありませんが、手元で操作できるだけでとても便利になりますよ。
画像はドキュメントより引用:
あとは待機時にこんな風にしたりとか。
こんなに便利なFIPはヨドバシとかで売ってます。
皆様も是非快適なFIPライフを。
「初音ミク」はクリプトン・フューチャー・メディア株式会社の著作物です。
© Crypton Future Media, INC. www.piapro.net
おわり。