FrontPage > FlightGearマニュアル > 第3章

The FlightGear Manual Version 2.0.0

第3章 離陸:プログラムの起動方法

このドキュメントは http://www.flightgear.org/Docs/getstart/getstartch3.html の日本語訳です。

Table of Contents

3.1 環境変数

FlightGear を起動するために必須の環境変数が2つあります。 これらは、データとシーナリーのありかを FlightGear に伝えます。

プラットフォームや必要性により様々に設定できます。

3.1.1 FG_ROOT

これは、航空機や航空標識の位置、空港の周波数といったデータファイルを FlightGear が探す場所になります。 FlightGear をインストールした場所の data サブディレクトリがそれです。 例えば、/usr/local/share/FlightGear/datac:\Program Files\FlightGear\data になります。

3.1.2 FG_SCENERY

これは FlightGear がシーナリー・ファイルを探す場所になります。 ディレクトリのリストからなり、書かれた順に検索が行われます。 ディレクトリの区切り文字は、Unix では ":"、Windows では ";" になります。 例えば、

/home/joebloggs/WorldScenery:/usr/local/share/FlightGear/data/Scenery

あるいは

c:\Program Files\FlightGear\data\Scenery;c:\Program Files\FlightGear\data\WorldScenery

のようになります。

3.1.3 Windows と Mac OS X の環境変数

Windows のグラフィカル・ウィザードと Mac OS X の GUI ランチャーはこれらの環境変数を内部で定義してるので、自分の手で定義する必要はありません。 ですが、コマンドラインから FlightGear を実行したい場合にはこれらの環境変数を明示的に定義する必要があります。

3.2 Unix/Linux におけるシミュレータの起動

getstart2x.png
図3: 離陸準備完了。サンフランシスコ国際空港 (KSFO) のデフォルト出発位置にて待機中。

FlightGear を実行する前に、いくつかの環境変数を設定する必要があります。

Bourne シェル (とその互換シェル) で追加する方法を以下に示します。

LD_LIBRARY_PATH=/usr/local/share/FlightGear/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
FG_HOME=/usr/local/share/FlightGear
export FG_HOME
FG_ROOT=/usr/local/share/FlightGear/data
export FG_ROOT
FG_SCENERY=$FG_ROOT/Scenery:$FG_ROOT/WorldScenery
export FG_SCENERY

Cシェル(とその互換シェル)では以下のようになります。

setenv LD_LIBRARY_PATH=\
  /usr/local/share/FlightGear/lib:$LD_LIBRARY_PATH
setenv FG_HOME=/usr/local/share/FlightGear
setenv FG_ROOT=/usr/local/share/FlightGear/data
setenv FG_SCENERY=\
  $FG_HOME/Scenery:$FG_ROOT/Scenery:$FG_ROOT/WorldScenery

以上の環境変数の設定が終わったら、fgfs --option1 --option2... を実行して FlightGear を単純に起動します。 コマンドラインオプションは3.5節に書かれています。

3.3 Windows におけるシミュレータの起動

ビルド済みの Windows バイナリを使うと、グラフィカルなウィザードを用いて FlightGear を起動することができます。 スタートメニューの FlightGear Launcher、またはデスクトップアイコンを単純にダブルクリックしてください。 ランチャーでは、航空機や起動時の空港と滑走路、時刻、現在の気象状況、その他の数多くの設定を選ぶことができます。

getstart3x.png
図4: FlightGear ランチャー画面。

初回起動時に、変数 FG_ROOT (通常は c:\Program Files\FlightGear\data)と FG_SCENERY を設定するように求められるかもしれません。 FG_SCENERYはあなたがインストールしたシーナリーのディレクトリのリストで、典型的には c:\Program Files\FlightGear\data\scenery になります。

無効な値を設定してしまったり、後からシーナリーのディレクトリを変更した場合は、ランチャーの最初のページから"Prev"ボタンで戻って設定を変更することができます。

3.3.1 コマンドラインからの起動

もう一つの方法として、コマンドラインから FlightGear を実行できます。 これを行うには、環境変数 FG_ROOTFG_SCENERY を手作業で設定する必要があります。

コマンドプロンプトを開き、あなたのバイナリが保存されているディレクトリ (c:\Program Files\FlightGear\bin\win32 のような場所) に移動し、キーボードから環境変数を設定します。

SET FG_HOME=c:\Program Files\FlightGear
SET FG_ROOT=c:\Program Files\FlightGear\data
SET FG_SCENERY=c:\Program Files\FlightGear\data\Scenery

そして、同じコマンドプロンプト内でFlightGearを呼び出します (環境変数の設定は同じシェル内でのみ有効です)。

fgfs --option1 --option2...

コマンドラインオプションは3.5節に書かれています。

もちろん、Windows のテキストエディタ(メモ帳など)で上記コマンド行を使ったバッチファイルを作ることもできます。

最大のパフォーマンスを得るには、FlightGear の実行中はテキスト出力ウィンドウを最小化 (アイコン化) することをお勧めします。

訳注: 原文に対して以下の修正を行いました。-toshi

3.4 Mac OS X におけるシミュレータの起動

Mac OS X 用のビルド済みバイナリパッケージには GUI ランチャーが含まれています。 /Applications フォルダーの FlightGear アイコンをダブルクリックするだけで図5のような GUI ランチャーのウィンドウが表示されます。 ランチャーで出来ることは以下のとおりです。

以下の節ではこれらの機能を使って説明します。

MainMenu.png
図5: Mac OS X 用の GUI ランチャー (訳注: 日本語環境の画面に差し替え。画像提供: Tatさん。)

3.4.1 機体と空港の選択

ランチャーウィンドウで、機体名/空港名の右端にあるギアのボタンをクリックすると航空機と空港を選択できます。 ウィンドウの画像パネルには選択した航空機のサムネール画像が表示されます。 ここで選択する空港はフライト開始地点になります。 FlightGear が使用する ICAO 4レター空港コードは、1〜2文字のプリフィックスと2〜3文字の空港コードからなります。 たとえば、サンフランシスコ国際空港の ICAO コードは KSFO です。 ここで「K」はアメリカ合衆国のプリフィックスで、SFO はサンフランシスコ国際空港の空港コードになります。 空港や航空機を探し出すには、拡張機能 >> 位置機体 タブを使います。

3.4.2 風景の自動ダウンロードを有効にする

ランチャーウィンドウにある 風景の自動ダウンロード にチェックすると、TerraSync を使ってシーナリーデータを飛行中にダウンロードします。 シーナリーのダウンローダは、シーナリーデータを

/Applications/FlightGear.app/Contents/Resources/data/Scenery-Terrasync

にインストールします。

3.4.3 ナビゲーションマップ (Atlas) を有効にする

Mac 版 FlightGear には、フライトプランを手助けするためのナビゲーションマップ Atlas がユーザの便宜のために含まれています。 このオプションをチェックすると、飛行開始時に Atlas が自動的に起動します。 Atlas のオプションを指定する必要はありません。 GUI ランチャーが指定してくれます。

3.4.4 FlightGear (シミュレータ本体) の起動

飛行開始 ボタンをクリックするともうひとつのウィンドウが開きます。 これが FlightGear メインウィンドウです。 FlightGear は直ちにシミュレーションに必要な大量のデータをロードし始めます。 遅いマシンでは全てをロードし終わるまでにしばらく時間がかかるかもしれません。

3.4.5 拡張機能

FlightGear は起動時に、たくさんの機能やオプションを指定することができます。 このうちのいくつかは、FlightGear メインウィンドウにあるメニューからは変更することができません。 これらの機能を有効/無効にするには、ランチャーウィンドウの左下にある三角形のボタンをクリックしてください。 すると、拡張機能の各タブが表示されます。 全ての設定は保存されるため、再設定する必要はありません。

一般、機能、描画 タブ

これらのタブはいくつかの FlightGear オプションを指定します。

お気に入りタブ

お気に入りリストはウェブブラウザのブックマークのようなもので、現在のオプション設定に名前をつけて保存する手段を提供します。 現在のオプション設定を保存するには、ウィンドウ上部、あるいは お気に入りタブの下部にある "+" ボタンを押してください。 お気に入りに追加した後は、お気に入りタブの表にある行をダブルクリックすることで他の設定に切り替えることができます。 表形式の "-" ボタン (あるいは delete キー) を押すと、選択したお気に入りを削除します。

位置タブ

空港や航空母艦を見つけるには、フィルターテキスト領域にキーワードを入れて検索します。 入力可能なキーワードは以下の通りです。

キーワードに一致した空港と空母はフィルタのテキスト領域の下に表形式で表示されます。 上部の枠の空港名は、現在選択されている空港または空母と同期しています。 上部の枠の空港名の右端にあるギアボタンをクリックしてこのタブを開くこともできます。

空港を選択すると、"滑走路" ポップアップボタンに選択可能な滑走路が表示されます。 滑走路を選択するか、あるいは "デフォルト" のままにしておくことができます。

機体タブ

航空機を見つけるには、フィルタのテキスト領域にキーワードを入れて検索します。

キーワードに一致した航空機のリストはフィルタのテキスト領域の下に表形式で表示されます。 上部の枠の機体名は、現在選択されている航空機と同期しています。 上部の枠の機体名の右端にあるギアボタンをクリックしてこのタブを開くこともできます。

もっとたくさんの航空機データをインターネットから探したければ、機体タブの下にある "機体を取得" ボタンをクリックします。 するとウェブブラウザが開いて、FlightGear Mac OS X ウェブサイトにある Aircraft Links ページに飛びます。 そこからいくつかのリンクをたどってお好みの航空機をダウンロードしてください。 航空機をダウンロードしたら、"その他" タブを開いてインストールしてください。

航空機を検索するときに変な挙動が起きた場合は、航空機データベースのキャッシュファイルを削除すると問題が解決するかもしれません。 /Applications/Utilities/Terminal.app を開き、以下のコマンドを打ってキャッシュファイルを削除してください。

cd /Applications/FlightGear.app/Contents/Resources

rm AircraftCache.rb

ビルド済みバイナリパッケージのディスクイメージをマウントしたときに、そこからは FlightGear を起動しないように注意してください。 マウント状態のディスクイメージ内のフォルダは読み取り専用なので、アドオンデータをインストールすることはできません。 FlightGear をインストールするには、マウントしたディスクイメージから FlightGear アイコンを /Applications フォルダにコピーする必要があります。

ネットワークタブ

このタブには、2つのネットワーク機能が含まれています。 1つはマルチプレーヤモードで、もう1つは FGCOM (音声 ATC) です。 マルチプレーヤモードを有効にするには、以下を指定します。

FGCOM を有効にすると、無線機の設定を使って実際の声で通話することができるようになります。 スペースバーを押している間、選択した無線周波数 (COM1) で話すことができます。 他のプレーヤが同一周波数かつ有効範囲内でしゃべっていれば、その声を聞くことができます。 以下のリストは、FGCOM に存在するオプションです。

FGCOM とマルチプレイについての詳しい説明は 第5章 を参照してください。

その他タブ

航空機や空港、ランチャーに表示されるオプションを除くあらゆるオプションはここで指定できます。 スペース区切りのオプションを入力すると、FlightGear に追加オプションを引き渡すことができます。 "オプションを表示" を押すと、存在する全てのオプションを見ることができます。 いくつかのオプションは FlightGear をクラッシュさせてしまうかもしれません。 特定のオプションでそのようなクラッシュに遭遇したら、私たちにお知らせください。

航空機やシーナリーの追加データをインストールするには、"データをインストール" を押します。 複数のファイルやフォルダを指定して、FlightGear の data フォルダにインストールすることができます。 対応しているファイルの種類は以下の通りです。

全データのインストールが成功するとメッセージウィンドウが、それ以外の場合はエラーメッセージが表示されます。 航空機データとシーナリーデータは同時に選択できます。 航空機ファイルが含まれていないアーカイブファイルを選択した場合、data フォルダに展開はされますが無視します。 新しい航空機のインストールが完了すると、"機体" タブでその航空機を選択できるようになります。

3.4.6 コマンドラインからの起動

Mac OS X のコマンドラインからシミュレータを起動することもできます。 そうする場合は、Terminal.app (/Applications/Utilities にあります) を開いて、以下のコマンドを打ちます。

cd /Applications/FlightGear.app/Contents/Resources

./fgfs --option1 --option2 ....

コマンドラインオプションに関する詳細は 3.5節 をご覧ください。 他のプラットフォームとは異なり、ビルド済みバイナリパッケージを使用している限りは、FG_ROOT や FG_SCENERY といった環境変数を手動で指定する必要はありません。

3.5 コマンドライン パラメータ

訳注: 米国 Wiki サイト内の「Command Line Options」には、本節には記載されていないオプションが掲載されていますので、あわせてご覧ください。-toshi

以下に、FlightGear に存在する数多くのコマンドラインオプションの全リストと短い説明を記します。 これらのオプションの大半は、Windows バイナリで配布される FlightGear ランチャーでも適用できます。

もし継続的に再利用するオプションがある場合は、自動的に設定したいコマンドラインオプション一式を書き込んだ設定ファイルを作成することもできます。 どんなテキストエディタ (メモ帳、emacs、お好みならvi) で作っても構いません。

3.5.1 一般的なオプション

--help
主要なコマンドラインオプションを表示。
--help-verbose
全てのコマンドラインオプションを表示。
--language=code
このセッションの言語を選択。 pl、nl、it、fr、en、de など。
--version
現在の FlightGear のバージョンを表示。
--fg-root=path
デフォルト設定でコンパイルしなかった場合に、ルートdataファイルを探す場所をFlightGearに指示。
--fg-scenery=path
デフォルト位置の $FG_ROOT/Scenery にシーナリーがない場合などに基本シーナリーのパスを指定。 これは、CD-ROMにシーナリーがある場合に特に有用です。
--enable-save-on-exit, --disable-save-on-exit
シミュレータ終了時にユーザ設定を保存する機能の有効/無効。
--enable-freeze, --disable-freeze
FlightGear 起動時に一時停止状態にするかしないかを指定。 デフォルトでは一時停止しません。
--control-mode
一次操作デバイス (joystick, keyboard, mouse) の指定。 デフォルトはjoystick。
--enable-auto-coordination, --disable-auto-coordination
エルロンとラダー間の自動連携オン/オフ切り替え。 ラダーペダルや"ツイスト"対応ジョイスティックを持っていないユーザには自動連携をお勧めします。
--browser-app=path
Webブラウザの場所を指定。 例: --browser-app="C:\Program Files\Internet Explorer\iexplore.exe" (空白があるため" "に注意!)。
--config=path
追加プロパティを指定のパスからロード。 例: fgfs --config=./Aircraft/X15-set.xml
--units-feet
測定の単位にフィートを使用。
--units-meters
測定の単位にメートルを使用。

3.5.2 機能

--enable-ai-models, --disable-ai-models
AI飛行機の有効/無効。
--ai-scenario=name
特定のAIシナリオを有効にします。(例 --ai-scenario=vinson-demo). 複数回使用できるかもしれません。
--enable-random-objects, --disable-random-objects
ランダムな風景のオブジェクト(建物/木)を有効化/無効化できます。デフォルトでは有効になっています。

3.5.3 サウンド

--enable-sound, --disable-sound
音を有効または無効にします。
--show-sound-devices
利用可能なサウンドデバイスを表示します。
--sound-device=device
音を出すサウンドデバイスを指定します。
--enable-intro-music, --disable-intro-music
FlightGearの起動時にサンプル音を再生するかどうかを指定します。

3.5.4 航空機

--aircraft=aircraft
指定した飛行機をロードします、例えば: --aircraft=c172p. 選択可能なファイルを見つけるには、$FG ROOT/Aircraftディレクトリをチェックして、"-set.xml" で終わるファイルを探してください。航空機を指定するときは、ファイル名から "-set.xml" を除外してください。別の方法として、下記の --show-aircraft オプションを使うこともできます。追加の航空機をダウンロードするには、2.2節 をご覧ください。
--show-aircraft
現在存在する航空機の種類をソートしてリスト表示。
--min-status=status
機体の最低限の状態を指定しますalpha,beta,early-production,productionの一つを選択します。--show-aircraftと共に使用してください。
--aircraft-dir=PATH
実行ファイルの場所を基準に、航空機のディレクトリを指定します。デフォルトでは $FG ROOT/Aircraft です。
--vehicle=name of aircraft definition file
--aircraft と同様です。
--livery=Name
航空機の塗装を指定します。

3.5.5 フライトモデル

--fdm=abcd
フライトもデルを選択します。オプションは jsb, larcsim, yasim, magic, balloon, external, pipe, ada, null です。航空機のFDMを正しく設定するオプションです - このオプションは通常は無視することができます。
--aero=aircraft
ロードするために航空機の飛行モデルを指定します。航空機モデルを正しく設定するオプションです- このオプションは通常は無視することができます。
--model-hz=n
このレート(毎秒の繰り返し)でFDMを実行します。
--speed=n
現実より速くFDMを実行します。(訳注:x倍速、と言う方が正しいでしょう。)
--trim, --notrim
JSBSimを初期化するとき、トリムを取るか、取らないかを指定します。デフォルトはトリムを取ります。
--on-ground, --in-air
デフォルトでは地上で、もしくは空中で起動します。もし --in-air を指定した場合、初期高度も --altutude で設定する必要があり、また、初期速度もセットしたい場合は --vc で設定してください。一部の航空機は、(特にX15)空中で開始する必要があることに注意してください。
--enable-fuel-freeze, --disable-fuel-freeze
燃料の状態が一定(例:frozen)か、通常どおり消費されている(デフォルト)かを指定してください。

3.5.6 初期位置と方向

--parking-id=ABCD
空港内の指定した駐機場で開始します。
--runway=NNN
開始する滑走路を指定します。(例: 28L). 駐機場や滑走路がしていされない場合、離陸のために風に正体する滑走路を選択します。
--vor=ABCD, --ndb=ABCD, --fix=ABCD
VOR, NDB 、もしくは FIXを基準にした位置で開始します。アプローチの練習に有用です。
--carrier=NAME
空母上でスタートします。空母の運用については5.2節を参照してください。
--parkpos=NAME
空母上の指定した駐機場で開始します。--carrier オプションと共に使う必要があります。デフォルトではカタパルトの射出場所です。
--offset-distance=nm, --offset-azimuth=deg
--airport, --vor, --ndb, --fix, --carrierでセットした場所を基準に、距離と方位を指定した場所から開始トします。
--lon=degrees, --lat=degrees
起動時の緯度と経度を度で指定します。(南緯と西経はマイナス)。
--altitude=feet
起動時の高度を指定。--in-air オプションと共に使用します。高度の単位は、指定が無い場合はフィートで、 --units-metersを指定している場合はメートルです。直ちに失速するのを避けるため--vc で初期速度を指定することもできます。
--heading=degrees, --roll=degrees, --pitch=degrees
航空機の初期の向きを指定します。すべての値はデフォルトではゼロです - 北で、前後左右に水平です。
--uBody=X, --vBody=Y, --wBody=Z
X, Y, Z 軸に沿った速度を指定します。速度は、指定が無い場合はフィート毎秒で、 --units-metersを指定している場合はメートル毎秒です。
--vNorth=N, --vEast=E, --vDown=D
南北、東西、そして垂直軸に沿った初期速度を設定します。速度は、指定が無い場合はフィート毎秒で、 --units-metersを指定している場合はメートル毎秒です。
--vc=knots, --mach=num
初期速度をノットかマッハ数で指定します。--altitudeを設定する場合に便利で、使用しない場合、すぐに失速します!
--glideslope=degrees, --roc=fpm
開始時のグライドスロープの角度を度で、昇降率をフィート毎分で指定します。正か負の値を指定できます。

3.5.7 環境オプション

--ceiling=FT ASL[:THICKNESS FT]
雲底高度を設定します、また雲の厚さも指定できます。(デフォルトは2000ft).
--enable-real-weather-fetch, --disable-real-weather-fetch
天候の制御にリアルタイムの気象情報をダウンロードして使用します。
--metar=METAR STRING
特定の METAR 文字列を使用します。 例: --metar=~XXXX 012345Z 00000KT 99SM CLR 19/M01 A2992~. METAR は米国、欧州で最も一般的な書式で指定することが出来ます。--enable-real-weather-fetchとは同時に使用できません。
--random-wind
ランダムで吹く風の強さと方向をセットします。
--turbulence=n
乱気流を 無風 (0.0) から 強い (1.0)で設定します。
--wind=DIR@SPEED
地上付近の風を指定します。方向は度で、速度はノットで指定します。値は、コロンで区切って範囲で指定することが出来ます。 例: --wind=180:220@10:15 。
--season=param
シミュレーションする季節を指定します。有効なパラメータはsummer(夏、デフォルト)とwinter(冬)です。
--visibility=meters, --visibility-miles=miles
視程の初期値をメートルまたはマイルで設定します。

3.5.8 レンダリングオプション

--aspect-ratio-multiplier=N
ディスプレイのアスペクト比を倍数で指定します。
--bpp=depth
色深度をピクセルあたりのビット数で指定。
--enable-clouds, --disable-clouds
雲層を有効化(デフォルト) or 雲層を無効化します。
--enable-clouds3d, --disable-clouds3d
3D雲層を有効化(デフォルト) or 3D雲層を無効化します。非常にきれいですが、グラフィックカードがサポートするGLSLシェーダに依存していて、古いorパワーの無いグラフィックボードでは使えません。
--enable-distance-attenuation, --disable-distance-attenuation
滑走路燈火とアプローチライトの減衰を有効または無効にします。
--enable-enhanced-lighting, --disable-enhanced-lighting
より現実的な滑走路の燈火とアプローチを有効または無効にします。
--enable-fullscreen, --disable-fullscreen
フルスクリーンモードを有効または無効(デフォルト)にします。
--enable-game-mode, --disable-game-mode
3DFXグラフィックカードでのフルスクリーンモードを有効または無効にします。
--enable-horizon-effect, --disable-horizon-effect
水平線近くの効果を有効化(デフォルト) or 3D雲層を無効化します。
--enable-mouse-pointer, --disable-mouse-pointer
外部マウスポインタを有効または無効(デフォルト)にします。古いVoodooベースのカードのフルスクリーンモードで便利です。
--enable-panel, --disable-panel
計器パネルをオン(デフォルト)または、計器パネルをオフにします。
--enable-skyblend, --disable-skyblend
霧やかすみを有効に(デフォルト)または無効にします。
--enable-specular-highlight, --disable-specular-highlight
光の反射を有効(デフォルト)または無効にします。
--enable-splash-screen, --disable-splash-screen
アクセラレータボードの初期化時に3DFXのロゴが回転する機能を無効(デフォルト)または有効にします。(3DFXのみ)。
--enable-textures, --disable-textures
地形の細部を有効化(デフォルト)または無効化。
--enable-wireframe, --disable-wireframe
ワイヤーフレームを有効または無効(デフォルト)にします。FlightGearの世界が内部ではどのように見えるか知りたければ試してみましょう!
--fog-disable, --fog-fastest, --fog-nicest
霧の濃さをセットします。レンダリングの負担を軽くするために、デフォルトでは遠方の景色を霧で隠しています。これを無効にした場合、遠くまで見える代わりにフレームレートが低下します。--fog-fastest を使用した場合、霧は現実的ではなくなりますが、フレームレートが増加します。デフォルトは --fog-nicest です。
--fov=degrees
視野を度で設定します。デフォルトは55.0です。
--geometry=WWWxHHH
ウィンドウ/画面の解像度を定義します。例: --geometry=1024x768..
--shading-smooth, --shading-flat
スムースなシェーディング(デフォルト)を使用するか、見苦しい代わりに高速に描写できるフラットなシェーディングを選択します。
--texture-filtering=N
異方性テクスチャのフィルタリングを設定します。値は、1 (デフォルト), 2, 4, 8 , 16 です。
--view-offset=xxx
デフォルトの前方視界の向きを真正面に対するずれとして設定。設定可能な値は、LEFT、 RIGHT、 CENTER、または度単位の特定の数値です。 マルチウィンドウディプレイで有用です。

3.5.9 HUDのオプション

--enable-anti-alias-hud, --disable-anti-alias-hud
HUD (Head Up Display) をアンチエイリアスを使用して表示するかどうか設定します。
--enable-hud, --disable-hud
HUD (Head Up Display) を表示するかどうか設定します。デフォルトでは表示しません。
--enable-hud-3d, --disable-hud-3d
HUD (Head Up Display) を3D表示するかどうか設定します。
--hud-culled, --hud-tris
レンダリングされた三角形の数をHUDに表示。主にグラフィック開発者が関心を持つでしょう。

3.5.10 航空機のシステムのオプション

--adf=[radial:]frequency
ADF方位と周波数を指定します。
--com1=frequency, --com2=frequency
COM1/COM2 の無線機の周波数を設定します。
--dme=nav1
nav2|frequency|NAV1とNAV2にDMEの周波数を指定します。
--failure=system
航空機のシステムの故障を設定します。 pitot(ピトー管), static(静圧), vacuum(負圧), electrical(電装)が設定できます。複数のシステムを複数回故障させることができます。
--nav1=[radial:]frequency, --nav2=[radial:]frequency
NAV1/NAV2に方位と周波数を指定します。

3.5.11 時間オプション

--enable-clock-freeze, --disable-clock-freeze
時刻の進み方を標準にするか、停止させるかを選択します。
--start-date-gmt=yyyy:mm:dd:hh:mm:ss, --start-date-lat=yyyy:mm:dd:hh:mm:ss, --start-date-sys=yyyy:mm:dd:hh:mm:ss
起動時の正確な日付/時刻を指定します。3つの違いは、基準点にGMT、機上での現地時刻、コンピュータのシステムクロックを使うという点が異なります。

--time-match-local, --time-match-real とは同時に使用できません。

--time-match-local, --time-match-real
--time-match-realがデフォルトで、シミュレータはシステムクロックを読み込み使用します。シミュレータの時計はクロックと同期しているので、コンピュータのある場所と同じタイムゾーンの地域を仮想的に飛行する場合にはこのオプションが望ましいです。

けれども、世界の異なる箇所を飛行するときはそうではないかもしれません。なぜならば、あなたのコンピュータと仮想的に飛行している場所との間には多くの時差があるからです。--time-match-localオプションは、これを考慮して、あなたのいる現実世界と仮想的に飛行している場所とのタイムゾーンの差を計算します。そして現地時間に同期します。

--start-date-gmt, --start-date-lat, --start-date-sys とは同時に使用できません。

--time-offset=[+-]hh:mm:ss
この機能は、他の機能によってすでに設定されている値に、指定した時間を加えます。
--timeofday=param
時間帯を指定します。有効なパラメータは real(現実通り), dawn(夜明け), morning(朝), noon(昼), afternoon(午後), dusk(夕暮れ), evening(夕方), midnight(深夜)です。

3.5.12 ネットワークオプション

--multiplay=dir,Hz,host,port, --callsign=ABCD
マルチプレイでのオプションとコールサインをセットします。5.1節を参照してください。
--httpd=port, --telnet=port
指定したポートにhttpサーバ、またはtelnetサーバを有効にして、プロパティツリーへのアクセスを提供します。
--jpg-httpd=port
指定したポートにhttpサーバを有効にして、スクリーンショットを提供します。
--proxy=[user:password@]host:port
指定したプロキシサーバを使用します。

3.5.13 ルート/ウェイポイント オプション

--wp=ID[@alt]
GCオートパイロットにウェイポイントを指定;このコマンドを多数列挙することにより、複数のウェイポイント(すなわちルート)を指定できます。
--flight-plan=[file]
ウェイポイントがいくつもあるときに便利。読み込むファイルを指定できます。

注意: これらのオプションは、自分が何をしているか分かっている上級ユーザ向けです。

3.5.14 入出力オプション

入出力パラメータの詳細な説明は、FlightGearのインストールディレクトリ内のDocsディレクトリにあるREADME.IOで見つけることができます。

 
--atlas=params
Atlasプロトコルを使って接続を張る。(AtlasとTerraSyncで使用されます)
--atcsim=params
ATC Sim(atc610x)プロトコルを使って接続を張る。
--AV400=params
Garmin196/296シリーズのGPSを駆動するために接続を張る。
--AV400Sim=params
Garmin 400シリーズのGPSを駆動するために接続を張る。
--generic=params
Generic(XMLベースの定義)プロトコルを使って接続を張る。
--garmin=params
Garmin GPSプロトコルを使って接続を張る。
--joyclient=params
Agwagonジョイスティックに接続を張る。
--jsclient=params
リモートジョイスティックへの接続を張る。
--native-ctrls=params
FGネイティブコントロールプロトコルを使って接続を張る。
--native-fdm=params
FGネイティブFDMプロトコルを使って接続を張る。
--native-gui=params
FGネイティブGUIプロトコルを使って接続を張る。
--native=params
FGネイティブプロトコルを使って接続を張る。
--nmea=params
NMEAプロトコルを使って接続を張る。
--opengc=params
OpenGCプロトコルを使って接続を張る。
--props=params
双方向的なプロパティマネージャを使って接続を張る。
--pve=params
PVEプロトコルを使って接続を張る。
--ray=params
Ray Woodworthモーションチェアプロトコルを使って接続を張る。
--rul=params
RULプロトコルを使ってコネクションを張る。

3.5.15 デバッグ用オプション

--enable-fpe
浮動小数点例外が発生すると中断を有効にする。
--fgviewer
シミュレータ全体をロードする代わりに、軽量なOSGViewerをロードします。航空機モデルをチェックするのに便利です。
--log-level=LEVEL
ログレベルを設定します。有効な値は、 bulk, debug, info, warn, alert です。
--prop:[type:]name=value
あるプロパティ値をvalueに設定。 エンジン動作状態で起動させる例:

--prop:/engines/engine0/running=true

もう1つの例:

--aircraft=c172
--prop:/consumables/fuels/tank[0]/level-gal=10
--prop:/consumables/fuels/tank[1]/level-gal=10

これはセスナにショートフライト用の給油をします。
--trace-read=params
あるプロパティに対する読み込みをトレース。複数列挙できます。
--trace-write=params
あるプロパティに対する書き込みをトレース。複数列挙できます

3.6 ジョイスティック・サポート

キーボード一つで機械を制御するセスナのパイロットを想像できますか? 飛行感覚を正しく得るためには、ジョイスティックまたはヨーク(操縦桿)に加えてラダー(方向舵)ペダルが必要ですよね? ですが、いくつかのオペレーティングシステム用に市販されているジョイスティックやフライトスティック、ヨーク、ペダルなどには種々様々な組み合わせがあるので、FlightGearにおけるジョイスティック・サポートは重要です。

FlightGearには、どんなジョイスティックやヨーク、ペダルが取り付けられても自動的に検出するジョイスティック・サポートが統合されています。 とにかくお試しください! もしうまく動作しなくても、がっかりせずに落ち着いて! FlightGearのメニューから Help -> Joystick Information を選ぶと、あなたのどのジョイスティックが検出されているのかを見ることができます。

残念なことに、FlightGearでサポートされた(恐らく英語以外の)オペレーティングシステムと、市販のジョイスティックの組み合わせによっては、うまく動作しないことがあります。 基本的には、うまく動かすためには2通りのアプローチ方法があり、前者をお勧めします。

訳注: 下記の「Windowsユーザ向けのいくつかのヒント」には、日本のWindowsユーザにとって重要な情報が記載されています。 また現状にそぐわないファイルのパスは原文から変更し、特に断り無く3.1.1の$FG_ROOTを用いて書き直しました。-toshi

3.6.1 内蔵されているジョイスティック・サポート

全般的な留意点

ジョイスティックの自動検出を有効にするためには、各ジョイスティックごとに、ジョイスティック・バインディング用のxmlファイルが存在する必要があります。 このファイルには、どの軸とボタンがFlightGearのどの機能を操作するのに使われるのかが記載されています。 軸またはボタンを機能に関連付けることを「バインディング」と呼びます。 全てのバインディング・ファイルを探す場所をFlightGearに伝える役目をするのは、ジョイスティック記述ファイル

$FG_ROOT/joysticks.xml

です。このファイルの中に対応する項目があるならば、バインディング・ファイルはどんな名前でも許容されます。 後ほど、例を使って説明します。

いくつかのメーカのジョイスティックに対しては、数種類のバインディング・ファイルがメーカごとに名前の付いたフォルダの中に含まれています。 例えば、もしCH Productsのジョイスティックをお持ちなら、

$FG_ROOT/Input/Joysticks/CH

というフォルダを見て、ご自身のジョイスティックが動きそうなファイルを探してください。 そのようなファイルが存在し、ご自身のジョイスティックが他のアプリケーションで動作しているならば、FlightGearの初回起動時にそのジョイスティックは動作するはずです。 そのようなファイルが存在しない場合は、後節で、FlightGearに含まれるサンプルからカット&ペーストしてファイルを作成する方法について説明します。

 

ジョイスティックが有効であることの確認

あなたのコンピュータはジョイスティックを認識していますか? Linux環境下でこの質問に答える一つの方法として、システムを再起動してすぐにコマンドラインで

dmesg | grep Joystick

と入力する方法があります。 これは、ブート・メッセージをgrepにパイプして、ブート・メッセージ内で"Joystick"という文字列を含む全ての行を表示します。 もしSaitekのジョイスティックが接続されているならば、以下と似たような行を見ることができるでしょう。

input0: USB HID v1.00 Joystick [SAITEK CYBORG 3D USB] on usb2:3.0

この行から、ジョイスティックがオペレーティングシステムに対してSAITEK CYBORG 3D USBと名乗っていることが分かります。 このことから、ジョイスティックのドライバからあなたのジョイスティックが見えている、と言うことはできません。 Windows環境下で動作している場合には上記の方法は使えませんが、次の項に進んでください。

 

ドライバがジョイスティックを認識していることの確認

FlightGearには、js_demoと呼ばれるユーティリティが同梱されています。 これは、システムに接続されているジョイスティックの番号、それぞれの名称、能力を報告します。 Linux環境下では、 FlightGear/bin フォルダから次のようにしてjs_demoを実行できます。

$ cd /usr/local/FlightGear/bin
$ ./js_demo

Windows環境下では、コマンドプロンプト(スタート/すべてのプログラム/アクセサリ)を開き、FlightGearのバイナリ・フォルダに行って以下のようにプログラムを起動します(FlightGearは c:\Program Files\FlightGear にインストールされていると仮定)。

c:
cd "\Program Files\FlightGear\bin"
js_demo.exe

訳注: FlightGear v1.9.0 には js_demo.exe は含まれていません。

Mac OS X環境下では、Terminal.app(/Applications/Utilities/)を開き、以下の様にjs_demoを実行できます:  $ cd /Applications/FlightGear.app/Contents/Resources  $ ./js demo

私たちの環境では、最初の何行かの出力はこのようになります(スクロールが早くて画面を通り過ぎてしまう場合はCtrl-Cでプログラムを止めてください!)。

Joystick test program.
~~~~~~~~~~~~~~~~~~~~~~
Joystick 0: ``CH PRODUCTS CH FLIGHT SIM YOKE USB''
Joystick 1: ``CH PRODUCTS CH PRO PEDALS USB''
Joystick 2 not detected
Joystick 3 not detected
Joystick 4 not detected
Joystick 5 not detected
Joystick 6 not detected
Joystick 7 not detected
+--------------------JS.0----------------------+--------------------JS.1----------------------+
| Btns Ax:0 Ax:1 Ax:2 Ax:3 Ax:4 Ax:5 Ax:6      | Btns Ax:0 Ax:1 Ax:2                          |
+----------------------------------------------+----------------------------------------------+
| 0000 +0.0 +0.0 +1.0 -1.0 -1.0 +0.0 +0.0   .  | 0000 -1.0 -1.0 -1.0   .    .    .    .    .  |

まず注目していただきたいのは、ドライバによって認識されたジョイスティックがそれぞれ何番に割り当てられたのかをjs_demoが報告することです。 また、各ジョイスティックが報告する"名称"が引用符の間に含まれることにも注目してください。 この名称は、各ジョイスティックに対するバインディングxmlファイルを記述しようとする際に必要になります。

 

軸とボタンの番号付けの特定

js_demoを用いて、軸とボタンの番号を以下のようにして特定することができます。 ジョイスティックの軸とボタンを操作しながらjs_demoの出力を観測することにより、ジョイスティックのそれぞれの軸とボタンがどの軸番号とボタン番号に割り当てられているかを決定することができます。 一般的に、番号は0から始まることに注意してください。

ボタンは2進数として内部で処理されており、0ビット目(最下位ビット)はボタン0を、1ビット目はボタン1を表しています。 しかしながら、画面上の番号は16進法で表示されます。つまり、以下のようになります。

0001 → ボタン0が押されている
0002 → ボタン1が押されている
0004 → ボタン2が押されている
0008 → ボタン3が押されている
0010 → ボタン4が押されている
0020 → ボタン5が押されている
0040 → ボタン6が押されている
... など。最大で ...
8000 → ボタン15が押されている
... そして ...
0014 → ボタン2と4が同時に押されている
... など。

Linuxユーザに対しては、ジョイスティックの"名称"や各軸とボタンに割り当てられた番号を特定するもう一つのオプションがあります。 たいていのLinuxのディストリビューションには"jstest"という非常に手軽なプログラムが含まれています。 CH Productのヨークがシステムに接続されている場合、jstestによって以下の出力行が表示されます。

jstest /dev/js3
Joystick (CH PRODUCTS CH FLIGHT SIM YOKE USB ) has 7 axes and 12 buttons. Driver version is 2.1.0
Testing ... (interrupt to exit)
Axes:  0:     0  1:     0  2:     0 3:     0 4:     0 5:     0 6:     0 Buttons:  0:off  1:off 
2:off  3:on  4:off  5:off  6:off  7:off  8:off  9:off  10:off  11:off

括弧で挟まれた"名称"に注目してください。 これが、あなたのジョイスティックにシステムが関連付けている名称です。

コントローラのどれかを動かすと、その動かしているコントローラに対応する軸番号の後の数字が変わります。 ボタンのどれかを押すと、押しているボタンに対応するボタン番号の後のoffがonに変わります。 このようにして、2進法に混乱させられることなく、それぞれの操作に対する軸番号とボタン番号を素早く書き出すことができます。

 

ジョイスティック・バインディング用xmlファイルの記述と編集

現時点で、オペレーティングシステムとジョイスティック・ドライバの両方があなたのジョイスティックを認識していることを確認してあります。 また、オペレーティングシステムとドライバに対してあなたのジョイスティックが報告するジョイスティックの"名称"を特定するためのいくつかの方法も分かりました。 すると、どの軸やボタン、対応する番号に対して何の制御機能を割り当てたのかを記述したリストが必要になることでしょう。

前述のjs_demoやjstestを使って(紙と鉛筆で)以下の表を作成してください。 ここでは、ハットスイッチに連動する2軸を含む5つの軸があると仮定しています。

軸 (Axis)ボタン (Button)
エレベータ (elevator) = 0視界切替 (view cycle) = 0
ラダー (rudder) = 1全ブレーキ (all brakes) = 1
エルロン (aileron) = 2トリムアップ (up trim) = 2
スロットル (throttle) = 3トリムダウン (down trim) = 3
左右ハット (leftright hat) = 4フラップ下降 (extend flaps) = 4
前後ハット (foreaft hat) = 5フラップ上昇 (retract flaps) = 5
回転数減少 (decrease RPM) = 6
回転数増加 (increase RPM) = 7

仮に、ジョイスティックがシステムとドライバに提供する"名称"が「QUICK STICK 3D USB」であるとしましょう。 FlightGearに含まれる例を用いて、今のところサポートされていないジョイスティックを自動認識させる一番簡単な方法は、既存のバインディング用xmlファイルを編集することです。 $FG_ROOT/Input/Joysticks/ サブフォルダ内のxmlファイルをご覧ください。 FlightGearで提供されているいくつかのxmlバインディング・ファイルを評価した後に、私たちは次のファイルを編集することに決めます。

$FG_ROOT/Input/Joysticks/Saitek/Cyborg-Gold-3d-USB.xml

このファイルには、軸に割り当てられた上記の全ての軸機能と、ボタンに割り当てられた上記の全てのボタン機能が含まれています。 このため、些細な編集で済みます。

編集を始める前に、バインディング用xmlファイルに対する名前を決め、QSジョイスティック用のフォルダを作成し、元となるxmlファイルをこのディレクトリにこの名前でコピーする必要があります。

$ cd /usr/local/FlightGear/Input/Joysticks
$ mkdir QS
$ cd QS
$ cp /usr/local/FlightGear/Input/Joysticks/Saitek/Cyborg-Gold-3d-USB.xml QuickStick.xml

ここでは、/usr/local/FlightGear にFlightGearがインストールされたLinux/UNIXシステムを仮定しました。 c:\Program Files\FlightGear\ にFlightGearがインストールされたWindowsでの同様な手順としては、コマンドプロンプトを開いて以下を入力してください。

c:
cd "\Program Files\FlightGear\data\Input\Joysticks"
mkdir QS
cd QS
copy "\Program Files\FlightGear\data\Input\Joysticks\Saitek\Cyborg-Gold-3d-USB.xml" QuickStick.xml

次に、QuickStick.xmlをお好みのエディタで開いてください。 ジョイスティック名を変更することを忘れてしまう前に、<name>を含む行を検索してください。

<name>SAITEK CYBORG 3D USB</name>

という行が見つかりますので、以下のように変更してください。

<name>QUICK STICK 3D USB</name>

この行は、xml文書の重要な特色を明らかにしています。 それは、<タグ>で始まり、</タグ>で終わるということです。

では、あなたの作った表と、コピーしたファイルの先頭にあるコメントの表を比較します。 コメントから、Saitekのエレベータは軸1に割り当てられていることが分かることに注意しましょう。

<axis n="1">

という文字列を検索して、

<axis n="0">

に変更してください。

次に、Saitekのラダーは軸2に割り当てられていることに注意してください。

<axis n="2">

という文字列を検索して、

<axis n="1">

に変更してください。

訳注: 現在のFlightGearに同梱されているCyborg-Gold-3d-USB.xmlにおけるラダー軸は、UNIXとMacでは軸2、Windowsでは軸3に割り当てられています。 例えばUnix環境でラダーの割り当てを軸2から軸1に変更したい場合は、<desc>Rudder</desc>行の後の<number>の直後の

<unix>2</unix>

と書かれた行を

<unix>1</unix>

に変更すれば良いと考えられます。-toshi

引き続き、あなたの作った表とSaitekのコメント表を比較して、軸番号とボタン番号を適宜変更してください。 QUICKSTICK USBとSaitekの軸の数は同じですが、ボタンの数は異なるので、余計なボタンの行は削除しなくてはなりません。 また、開始タグ1つ1つに対して終了タグが存在することを念入りにチェックすることをお忘れなく。 さもないと、そのxmlファイルを用いるとエラーが発生します。

最後に、軸とボタン割り当ての変更に合わせてコメントテーブルを編集するによって、あなた自身(と、開発者MLやユーザーアーカイブに投稿した場合、それを受け取った人)に親切にしてください。 当たり前ですが、編集したら保存することを忘れないでください。 (翻訳自身無し:原文はコメント行で入れてます)

何人かのユーザからの報告によると、ある機能に割り当てられる軸とボタンの番号は、同じジョイスティックでもWindowsとLinuxで異なることがあり得ます。 上述の手順を用いることで、異なるオペレーティングシステム用に作成されたバインディングxmlファイルをご自身のオペレーティングシステム用に容易に変更することが出来ます。

 

新しいバインディングxmlファイルのFlightGearへの読み込み

あなたの新しいxmlファイルをFlightGearが使用する前に、

$FG_ROOT/joysticks.xml

を編集する必要があります。 nameタグの間に入力した"名称"が、ジョイスティックによってドライバに提供された名前と一致するのであれば、あなたの新しいファイルのパスを含んだ1行を追加します。 以下の行をjoysticks.xmlに追加してください。

<js-named include="Input/Joysticks/QS/QuickStick.xml"/>

メニューのHelp -> Joystick Information を選択すると、あなたのジョイスティック設定をFlightGearがどのように解釈しているかを知ることが出来ます。

 

Windowsユーザ向けのいくつかのヒント

訳注: 日本語 Windows の環境 (特に Windows Vista) では、$FG_ROOT/joysticks.xmlの<PropertyList>行以下を修正する方法をお勧めします。-toshi

Windows で CH Pro Pedal (ジョイスティック0: 優先デバイス) と Saitek X45 (ジョイスティック1) の2台を接続している場合の設定例: -sambar

<PropertyList>
<!--
	<js-named include="Input/Joysticks/Local/X45-modified.xml"/>

	<js n="0" include="Input/Joysticks/Local/joystick_0.xml"/>
-->
	<js n="0" include="Input/Joysticks/CH/pro-pedals-usb.xml"/>
	<js n="1" include="Input/Joysticks/Saitek/X45.xml"/>
</PropertyList>

基本的には、Windows上でも上記の手順が機能します。 ご自分のジョイスティック/ヨーク/ペダルがうまく動作している、または上記の方法でうまく行ったのでしたら、そのままで結構です。 しかし、残念ながらまだいくつか問題のある方がいるかもしれません。

1つ目の問題は、non-US版のWindowsを使っているユーザに関係があります。 上述のように、ジョイスティック名はjs_demoプログラムから得ることができます。 もしnon-US版のWindowsを使っていて、上記で名づけたジョイスティックの.xmlファイルがそのような特殊なジョイスティック名を含んでいなければ、その適合するファイルの最初にその特殊な名前を以下のような形式で追加してください。

<name>Microsoft-PC-Joysticktreiber </name>

joysticks.xmlベースファイルには新しい項目は要りません。

訳注: 日本語Windowsの環境では、

<name>Microsoft PC ジョイスティック ド</name>

<name>Microsoft-PC-Joysticktreiber </name>

のような設定は動作しません。-toshi

不幸にして、Windows上のジョイスティックサポートにはもうひとつの抜け穴があります。 2つのUSBデバイス (例えばヨークとペダル) を取り付けている場合、同じドライバ名が二重に報告されてしまう可能性があります。 このケースでは、(0と1の中から)0番にヨークを割り当てることにより、少なくともヨークを動作させることができるようになります。 このために、エルロンを制御するヨークを回してjs_demoの出力を見てください。 コロンの最初のグループ(device0用)の数値が変化すれば、正しく割り当てられています。 もしコロンの2番目のグループ(device1用)の数値が変化するならば、まずは優先デバイスがヨークになるようにしなくてはなりません。 そうするためには、Windowsの「コントロール パネル」に入り、(訳注: クラシック表示で)「ゲーム コントローラ」を開き、「詳細設定」ボタンを選択してください。 ここで「優先」デバイスにヨークを選ぶことができます。 その後、もう一度js_demoを実行して割り当てを確認してください。 今度はヨークが数値の最初のグループをコントロールするはずです。

残念ながら、同じ方法を使ってペダルも操作できるようにする方法は分かっていません。 したがって、このようなケースなどにはジョイスティックコントロールを割り当てる別の方法を試してみることになるかもしれません。

Mac OS Xユーザ向けのいくつかのヒント

Mac OS Xでは、HID互換ジョイスティックのほとんどが認識され、使用可能です。いくつかのジョイスティックは既にFlightGearで正しく定義されています。しかしながら、しばしばあなたのジョイスティックはジョイスティックIDが無い、ボタンまたは軸が誤って設定されていて期待通りに動作しないことがあります。このような場合には、ジョイスティックの設定ファイルを変更する必要があります。

Mac OS Xでジョイスティックを設定する基本的な手順は、前述したLinuxの場合と同じです。主な違いはジョイスティックの設定ファイルへのパスと、ジョイスティック名を見つける方法です。ジョイスティックの設定ファイルはFlightGear.appフォルダ内の、 Contents/Resources/data/Input/Joysticks にあります。GUIランチャの拡張機能>その他>フォルダを開く でデータフォルダを開くことができます。また、アプリケーションフォルダ内のFlightGearアイコンを右クリックして、"パッケージの内容を表示"を選択してもデータフォルダにアクセス出来ます。ジョイスティックの名前を見つけるには、以下の手順に従ってください:

  1. Open System Profiler by choosing Apple Menu|About this Mac|More Info... (MacOSXで言語設定を「日本語」にした場合どう表示されるか訳者が知らないため未翻訳 - sambar)
  2. 左側のペインで[ハードウェア]リストから[USB]を選択します。
  3. USBデバイスツリーからジョイスティックの名前を探します(例:Logitech Extreme 3D)。
  4. 認識されたジョイスティック名を適切なXMLファイルにタグを追加してください。(例:<name>Logitech Extreme3D</name>)
  5. FlightGearのシミュレータウィンドウのメニューから、Help|Joystick Infomationを選択し適切に表示されているかどうかを確認します。

ジョイスティックが正しく認識されても、ジョイスティックが正常に動作しない場合は、ボタンまたは軸の設定を変更する必要があります。一部のMacユーザは、ジョイスティックのねじりラダーが(本来ラダーを制御すべきですが)スロットルを制御することを報告しました。これはMac OS Xの典型的なジョイスティック誤設定です。この問題を修正するために、あなたは、ジョイスティック構成ファイルの2個の軸のタグを編集する必要があります。

多くの場合、軸2がドライバレベルで軸3に割り当てられています。ラダー(とスロットル)の問題の修正のために、Mac向けにタグを編集または追加すれば、この問題は解決します。次の例は、ジョイスティックの設定ファイルの一部で、ラダー制御を軸3に割り当てます。

axis>

<desc>Rudder</desc>  
<number>  
  <linux>2</linux>  
  <mac>3</mac> <!--(ここを2に変更してください)-->  
  <windows>3</windows>  
 </number>  

/axis>

 .....

3.6.2 .fgfsrcを経由するジョイスティック・サポート

幸運なことに、これまでのファイルの記述言語であるXMLの経験が無いであろう平均的なユーザにも簡単に扱えるツールが現在は存在します。

この手法を使ってジョイスティックを設定するためには、コマンドシェル(Windowsではコマンド プロンプトであり、スタート|すべてのプログラム|アクセサリ にあります)を開いてください。 そして、/FlightGear/binにディレクトリを移動してください。 例えばこのようになります(ご使用の環境に合わせて修正してください)。

cd "c:\Program Files\FlightGear\bin"

そして、fgjsツールを起動します。 UNIX/Linuxマシンでは、

./fgjs

Windowsマシンでは、

fgjs

と入力します。 このプログラムは、どのジョイスティックが検出されたのかを(もし存在すれば)知らせてくれます。 では、画面に表示される指示に従ってください。 すなわち、要求されるとおりに軸を動かし、ボタンを押してください。 軽く触れるだけでも動作にカウントされることに注意してください。 画面上のレポートをチェックしてしてください。 もし何かおかしいと感じたら、単にプログラムを再起動してください。

全ての軸とスイッチが終了したら、上記のディレクトリ内にfgfsrc.jsというファイルが作成されます。 もしFlightGearのルートディレクトリFlightGearにオプションファイル.fgfsrc(UNIX)/system.fgfsrc(Windows)が含まれていなければ、単にFlightGearディレクトリにコピーして、

fgfsrc.js.fgfsrc(UNIX)/system.fgfsrc(Windows) に

名前を変えてください。

訳注: .fgfsrc と system.fgfsrc のありかについては、3.5 コマンドライン パラメータ をご覧ください。

オプションファイルを作成済みであった場合は、テキストエディタでfgfsrc.jsを開き、中身をコピーして.fgfsrc/system.fgfsrcの中に追加してください。 1つのヒントとして、fgjsの出力はUNIX形式です。 そのため、WIndowsのエディタ(訳注: メモ帳)では正常に表示できないかもしれません。 お勧めは、UNIXファイルも取り扱えるエディタを入手することです。 私の好みのフリーウェアのファイルエディタは、幾分と時代遅れですが、未だにPFEであり、以下から入手できます。

http://www.lancs.ac.uk/staff/steveb/cpaap/pfe/ (訳注: リンク先修正)

訳注: 上記は英語用テキストエディタですが、(メモ帳以外の)日本語用テキストエディタも大半はUNIXの改行コードに対応しています。 http://www.vector.co.jphttp://www.forest.impress.co.jp などでお好みのテキストエディタを探してみることをお勧めします。

fgjsの軸・ボタンの割り当ては、少なくとも正しく軸を割り当てますが、その出力はちょっと調整する必要があるかもしれません。 本来とは反対方向に動いてしまう軸があったり、不感帯が小さすぎたりなどの現象が起きるかもしれません。 例えば、USB CH Flightsim Yoke を Windows XP で用いたときは、

prop:/input/joysticks/js[1]/axis[1]/binding/factor=-1.0

から

prop:/input/joysticks/js[1]/axis[1]/binding/factor=1.0

に修正しなくてはなりませんでした。 そこで、ジョイスティックのプロパティの割り当てについての短い紹介をここに記します。

基本的に、全ての軸の設定は以下の構造からなる行を通じて指定します。

--prop:/input/joysticks/js[n]/axis[m]/binding/command=property-scale (1行)

--prop:/input/joysticks/js[n]/axis[m]/binding/property=/controls/steering option (1行)

--prop:/input/joysticks/js[n]/axis[m]/binding/dead-band=db (1行)

--prop:/input/joysticks/js[n]/axis[m]/binding/offset=os (1行)

--prop:/input/joysticks/js[n]/axis[m]/binding/factor=fa (1行)

ここで、

nデバイス番号 (通常は0から始まる)
m軸番号 (通常は0から始まる)
steering optionelevator, aileron, rudder, throttle, mixture, pitch のいずれか
dead-bandその信号が破棄される範囲、ヨークの微小な動きによるジッタを避けるのに便利
offsetデバイスがニュートラル・ポジションにならない時に指定
factorその軸の感度を制御、+1がデフォルト、-1で逆方向に動作

これらの行に従って、あなたのジョイスティックは少なくとも動作するようになるはずです。 例えばジョイスティックのボタンを動作するようにすることなどさらに細かい点を考慮して、John Check氏が非常に有用なREADMEを書いています。 それはFlightGearベースパッケージに含まれており、FlightGear/Docs/Readme/Joystick.htmlにあります。 入力デバイスに関するどんなトラブルの場合でも、このドキュメントを読むことを強くお勧めします。


編集メモ


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