[[FrontPage]] > [[翻訳作業場>翻訳作業場トップページ]] > [[FlightGearマニュアル]] / [[第II部>../]] / 第3章 RIGHT:The FlightGear Manual Version 0.9 ---- このドキュメントは http://www.flightgear.org/Docs/getstart/getstartch3.html の日本語訳です。 #contents *第3章&br; 離陸:プログラムの起動方法 [#qeef8757] **3.1 環境変数 [#h146f08c] FlightGearを起動するために必須の環境変数が2つあります。 これらは、データとシーナリーのありかをFlightGearに伝えます。 プラットフォームや必要性により様々に設定できます。 ***3.1.1 FG_ROOT [#s8e8aaab] 航空機や航空標識の位置、空港の周波数といったデータファイルをFlightGearが探す場所を指定します。 FlightGearをインストールした場所の下の''data''サブディレクトリになります。 例えば、''/usr/local/share/FlightGear/data'' や ''c:\Program Files\FlightGear\data'' になります。 ***3.1.2 FG_SCENERY [#t0db512d] FlightGearがシーナリー(風景)ファイルを探す場所を指定します。 ディレクトリを検索順にリストします。 ディレクトリの区切りは、Unixでは":"、Windowsでは";"になります。 例えば、''FG_SCENERY''の値が > ''c:\Program Files\FlightGear\data\WorldScenery;c:\Program Files\FlightGear\data\scenery'' <である場合、まず最初に検索するシーナリーは > ''c:\Program Files\FlightGear\data\WorldScenery'' <であり、次に > ''c:\Program Files\FlightGear\data\scenery'' <を検索します。 このことは、異なるシーナリーを別の場所にダウンロードできることを意味します。 **3.2 Unix/Linuxにおけるシミュレータの起動 [#u00753d1] #ref(http://www.flightgear.org/Docs/getstart/getstart2x.png,center,nolink,355x280) CENTER:図3: '''離陸準備完了。サンフランシスコ国際空港(KSFO)のデフォルト出発位置にて待機中。''' FlightGearを実行する前に、いくつかの環境変数を設定する必要があります。 -''LD_LIBRARY_PATH''に、''/usr/local/share/FlightGear/lib'' を 追加します。 -''FG_ROOT''で、FlightGearインストール場所のdataディレクトリを設定します。 > 例) ''/usr/local/share/FlightGear/data'' < -''FG_SCENERY''で、シーナリーのディレクトリのリストを":"区切りで設定します。 これは、シーナリーを検索する際に''PATH''のような働きをします。 > 例) ''$FG_ROOT/Scenery:$FG_ROOT/WorldScenery'' 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 >''訳注:'' FG_HOMEは現在は使われていないようです。-toshi >(参考) [[Re: [Flightgear-devel] FG_HOME no longer used?:http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg08360.html]] 以上の環境変数の設定が終わったら、''fgfs --option1 --option2...'' を実行してFlightGearを単純に起動します。 コマンドラインオプションは[[3.5節>#kda0484a]]に書かれています。 **3.3 Windowsにおけるシミュレータの起動 [#i95f52f1] ビルド済みのWindowsバイナリを使うと、グラフィカルなウィザードを用いてFlightGearを起動することができます。 スタートメニューの''FlightGear Launcher''、またはデスクトップアイコンを単純にダブルクリックしてください。 ランチャーでは以下を選ぶことができます。 - 航空機 - 起動時の空港と滑走路 - 日付と時刻 - 現在の天候 - その他の数多くの環境設定 #ref(http://www.flightgear.org/Docs/getstart/getstart3x.png,center,nolink,355x241) CENTER:図4: '''FlightGear Launcher画面。''' 初回起動時に、変数''FG_ROOT''(通常は''c:\Program Files\FlightGear\data'')と''FG_SCENERY''を設定するように求められるかもしれません。 ''FG_SCENERY''はあなたがインストールしたシーナリーのディレクトリのリストで、典型的には、 > ''c:\Program Files\FlightGear\data\scenery'' < と > ''c:\Program Files\FlightGear\data\WorldScenery'' < になります。 無効な値を設定してしまったり、後からシーナリーのディレクトリを変更した場合は、ランチャーの最初のページから"Prev"ボタンで戻って設定を変更することができます。 パフォーマンスを最大にするために、FlightGearの実行中はテキスト出力ウィンドウを最小化(アイコン化)することをお勧めします。 ***3.3.1 コマンドラインからの起動 [#odf5ae09] もう一つの方法として、コマンドラインからFlightGearを実行できます。 これを行うには、環境変数''FG_ROOT''と''FG_SCENERY''を手作業で設定する必要があります。 コマンドプロンプトを開き、あなたのバイナリが保存されているディレクトリ(''c:\Program Files\FlightGear\Win32\bin'' のような場所)に移動し、キーボードから環境変数を設定します。 SET FG_HOME="c:\Program Files\FlightGear" SET FG_ROOT="c:\Program Files\FlightGear\data" SET FG_SCENERY="c:\Program Files\FlightGear\data\Scenery";"c:\Program Files\FlightGear\data\WorldScenery" そして、同じコマンドプロンプト内でFlightGearを呼び出します (環境変数の設定は同じシェル内でのみ有効です)。 > ''fgfs --option1 --option2...'' もちろん、Windowsのテキストエディタ(メモ帳など)で上記コマンド行を使ったバッチファイルを作ることもできます。 **3.4 Mac OS Xにおけるシミュレータの起動 [#s1eda390] まず、ベースパッケージとバイナリをあなたのホームディレクトリにダウンロードしたものとします。 それから''Terminal.app''を開き、次の手順を実行します。 > setenv FG_ROOT ~/fgfs-base-X.X.X > ./fgfs-X.X.X.-date --option1 --option 2 あるいは、 > ./fgfs-X.X.X-version-date --fg-root=\~/fgfs-base-X.X.X --option1 >''訳注:'' --fg-root=の後の"\"は余計な感じがしますが、一応原文のまま残しておきます。-toshi **3.5 コマンドライン パラメータ [#kda0484a] >''訳注:'' 本節の一部には古い情報が含まれています。 最新の情報は、米国Wikiサイト内の「[[Command Line Parameters:http://wiki.flightgear.org/flightgear_wiki/index.php?title=Command_Line_Parameters]]」に掲載されていますので、あわせてご覧ください。-toshi 以下に、FlightGearに存在する数多くのコマンドラインオプションに対して、完全なリストと短い説明を記します。 これらのオプションの大半は、Windowsバイナリで配布されるFlightGearランチャーを通じて見ることもできます。 もし継続的に再利用するオプションがある場合は、設定ファイルにそれを含めることができます。 これは個人個人の設定に依存するのでFlightGearとは一緒に配布していませんが、どんなテキストエディタ(メモ帳、emacs、お好みならvi)でも作成可能です。 - Unixシステム: ''.fgfsrc'' ファイルをホームディレクトリ内に作成。 - Windows: ''system.fgfsrc'' ファイルを''FG_ROOT''ディレクトリ(例えば ''c:\Program Files\FlightGear\data'')に作成。 >''訳注:'' 1行に1オプションを記述してください。 ***3.5.1 一般的なオプション [#gf20b975] :--help|もっともよく使われるコマンドラインオプションのみを表示。 :--help-verbose|全てのコマンドラインオプションを表示。 :--fg-root='''path'''|デフォルト設定でコンパイルしなかった場合に、ルートdataファイルを探す場所をFlightGearに指示。 :--fg-scenery='''path'''|基本シーナリーへのパスをある特定のパスに指定。 デフォルト位置の''$FG ROOT/Scenery''にシーナリーがない場合など。 これは、CD-ROMにシーナリーがある場合に特に有用です。 :--disable-game-mode|フルスクリーン表示無効。 :--enable-game-mode|フルスクリーン表示有効。 :--disable-splash-screen|アクセラレータボードの初期化時に3DFXのロゴが回転する機能を無効(3DFXのみ)。 :--enable-splash-screen|宣伝するのがお好きならこれを設定! :--disable-intro-music|FlightGear起動時にオーディオサンプルを再生しない。 イントロ演奏に問題がある場合に推奨。 :--enable-intro-music|マシンパワーが十分なら、この設定をお楽しみください。 :--disable-mouse-pointer|外部マウスポインタ無効。 :--enable-mouse-pointer|外部マウスポインタ有効。古いVoodooベースのカードでフルスクリーンモードを使うときに有用。 :--enable-random-objects|ランダムなシーナリーのオブジェクト(ビルや樹木)を含有。デフォルトは有効。 :--disable-random-objects|ランダムなシーナリーのオブジェクト(ビルや樹木)を除外。 :--disable-freeze|FlightGear起動時にエンジンを動作させ、すぐに離陸可能にする。 :--enable-freeze|エンジン停止状態でFlightGearを起動。 :--disable-fuel-freeze|燃料の消費は標準。 :--enable-fuel-freeze|燃料タンクに一定の残量を保つ :--disable-clock-freeze|時刻の進行は標準。 :--enable-clock-freeze|時刻を止める。 :--control-mode|操作デバイス(joystick, keyboard, mouse)の指定。 デフォルトはjoystick(yoke)。 :--disable-auto-coordination|エルロン/ラダーの自動連携オフ(デフォルト)。 :--enable-auto-coordination|エルロン/ラダーの自動連携オン(ペダル無し時は推奨)。 :--browser-app='''/path/to/app'''|Webブラウザの場所を指定。 例: ''--browser-app="C:\Program Files\Internet Explorer\iexplore.exe"'' (空白があるため" "に注意!)。 :--prop: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'' < これはセスナにショートフライト用の給油をします。 :--config='''path'''|追加プロパティをパスからロード。 例: ''fgfs --config=./Aircraft/X15-set.xml'' :--units-meters|距離の単位にメートルを使用。 ***3.5.2 機能 [#a399b5b7] :--disable-hud|HUD(ヘッドアップディスプレイ)をオフ。 :--enable-hud|HUDをオン。 :--enable-anti-aliased-hud|HUDの線のアンチエイリアス処理をオン。 もしハードがサポートしていれば質が向上します。 :--disable-anti-aliased-hud|HUDの線のアンチエイリアス処理をオフ :--enable-panel|計器パネルをオン(デフォルト)。 :--disable-panel|計器パネルをオフ。 :--disable-sound|サウンドをオフ。 :--enable-sound|サウンドをオン。 ***3.5.3 航空機 [#qcb4b20d] :--aircraft='''航空機の定義ファイル名'''|例: ''--aircraft=c310''。 選択可能なファイルを見るには ''/FlightGear/Aircraft'' ディレクトリをチェックしてください。 拡張部分の"''-set.xml''"は含めずに、航空機を選択するそれぞれのファイル名の始めの部分を使ってください。 この方法で飛行モデル、パネル等の全てが一貫してロードされます。 完全なリストは下記[[3.7節>#j93076ea]]をご覧ください。 :--show-aircraft|現在存在する航空機の種類をソートしてリスト表示。 ***3.5.4 飛行モデル [#dc387186] :--fdm='''abcd'''|核となる飛行モデルを選択。 オプションは''jsb, larcsim, yasim, magic, balloon, external, pipe, ada, null''で、デフォルト値は''jsb'' ('''JSBSim''')です。 larcsimは、LaRCSimシミュレータからFlightGearが受け継いだ飛行モデルです。 yasimは、Any Ross氏のもうひとつの飛行力学シミュレータ(Yet Another Flight Dynamics Simulator)です。 magicは旋回モードでUFOの機体を動かします。 balloonは熱気球です。 externalは、TCPソケット経由でシミュレータのリモートコントロールを参照します。 pipeは、その名もpipeを経由してローカルからコントロールするためのものです。 nullは、飛行力学モデルを一切選択しません。 UIUC飛行モデルは、ここでは選択せずに次のオプションを使ってください! 飛行モデルに関するより多くの情報は[[1.4節>FlightGearマニュアル/第I部/第1章#g1eebf31]]及びこれ以降をご参照ください。 :--aero='''abcd'''|ロードする空気力学モデルを指定。 デフォルトはc172です。 利用できる空気力学モデルは選択した飛行モデルに依存します。 :--model-hz='''n'''|飛行力学モデルをこの速さ(1秒あたりの繰り返し回数)で実行します。 :--speed='''n'''|飛行力学モデルを現実世界よりn倍速く実行。 :--notorim|JSBSimの初期化時にモデルをトリムしない。 :--on-ground|地上で起動(デフォルト)。 :--in-air|空中で起動。 当然ながら、意味のある操作をするには下記の初期高度を指定する必要があります。 X15では必須のオプションです。 :--wind='''DIR@SPEED'''|方位DIR(度)から風速SPEED(ノット)の風が吹くように指定。 コロン区切りで範囲を指定することもできます。 例: 180:220@10:15。 ***3.5.5 初期位置と方向 [#bbd09ec9] :--airport-id='''ABCD'''|直接起動したい空港の国際コードを入力。 例えばニューヨークのJFK空港ならKJFKです。 取り込まれている空港のIDの長いリストと短いリストは''$FG_ROOT/Airports''で見つけることができます。 けれども、該当する地域の地形データが必要であることをお忘れなく! :--offset-distance='''nm'''|基準点に対する距離を海里(nm)で指定。 :--offset-azimuth='''deg'''|基準点に対する機首方位を度(degree)で指定。 :--lon='''degrees'''|起動時の経度を度で指定(西経はマイナス)。 :--lat='''degrees'''|起動時の緯度を度で指定(南緯はマイナス)。 :--altitude='''feet'''|起動時の高度を指定。 ''--in-air''オプションとともに自由飛行を開始するときに有用です。 ''--units-meters''を使っていなければフィート単位です。 :--heading='''degrees'''|機首方位(ヨー角)の初期状態を度で設定。 :--roll='''degrees'''|機体の左右の傾き(ロール角、バンク角)の初期状態を度で設定。 :--pitch='''degrees'''|機首の上下の傾き(ピッチ角)の初期状態を度で設定。 :--uBody='''feet per second'''|機体のX軸方向の速度。 ''--units-meters''を指定していなければフィート毎秒です。 :--vBody='''feet per second'''|機体のY軸方向の速度。 ''--units-meters''を指定していなければフィート毎秒です。 :--wBody='''feet per second'''|機体のZ軸方向の速度。 ''--units-meters''を指定していなければフィート毎秒です。 :--vc='''knots'''|対気速度の初期値をノットで指定(''--fdm=jsb''の場合のみ)。 :--mach='''num'''|対気速度の初期値をマッハで指定(''--fdm=jsb''の場合のみ)。 :--glideslope='''degrees'''|飛行経路角(滑空角)を指定(正の値も可)。 :--roc='''fpm'''|上昇速度の初期値を指定(負の値も可)。 ***3.5.6 レンダリング(描画)オプション [#mc092a03] :--bpp='''depth'''|色深度をピクセルあたりのビット数で指定。 :--fog-disable|霧を無効化。 レンダリングの負担を軽くするために、デフォルトでは遠方の景色を霧で隠しています。 このオプションを使うと、遠くまで見える代わりにフレームレートが低下します。 :--fog-fastest|このオプションを使うと、風景が良く見えなくなる代わりにフレームレートが向上します。 :--fog-nicest|このオプションを使うと、もやのかかった日に飛行するような、かなりリアルな視界になります。 :--enable-clouds|雲層を有効化(デフォルト)。 :--disable-clouds|雲層を無効化。 :--fov='''degrees'''|視野を度で設定。デフォルトは55.0です。 :--disable-fullscreen|フルスクリーンモードを無効化(デフォルト)。 :--enable-fullscreen|フルスクリーンモードを有効化。 :--shading-flat|最も速いモードですが、地形が見苦しくなります! このオプションは、画像プロセッサが本当に遅い場合に役立つかもしれません。 :--shading-smooth|推奨設定(デフォルト)。実に素晴らしい見え方になります。 :--disable-skyblend|霧やかすみの無い空を単色で表示。速いけど見苦しい! :--enable-skyblend|霧やかすみを有効にし、空や地形が本物っぽく見えます。 これがデフォルトであり推奨する設定です。 :--disable-textures|地形の細部を無効化。 見苦しいけれども画像ボードが遅い場合に役立つかもしれません。 :--enable-textures|デフォルトの推奨設定。 :--enable-wireframe|FlightGearの世界が内部ではどのように見えるか知りたければ試してみましょう! :--disable-wireframe|ワイヤーフレーム無し。デフォルト。 :--geometry='''WWWxHHH|ウィンドウサイズを定義。 ''WWWxHHH''は例えば''640x480''や''800x600''、''1024x768''になります。 :--view-offset='''xxx'''|デフォルトの前方視界の向きを真正面に対するずれとして設定。 設定可能な値は、''LEFT''、 ''RIGHT''、 ''CENTER''、または度単位の特定の数値です。 マルチウィンドウディプレイで有用です。 :--visibility='''meters'''|視程の初期値をメートルで設定。 :--visibility-miles='''miles'''|視程の初期値をマイルで設定。 ***3.5.7 ヘッドアップディスプレイ(HUD)オプション [#sfad0608] :--hud-tris|レンダリングされた三角形の数をHUDに表示。 :--hud-culled|間引かれた三角形の割合をパーセントでHUDに表示。 ***3.5.8 時刻オプション [#u81d276b] :--time-match-real|現実世界の時刻に同期。 :--time-match-local|現実世界の現地時間に同期。 :--start-date-sys='''yyyy:mm:dd:hh:mm:ss'''|システム時間に対する開始日時を指定。 :--start-date-gmt='''yyyy:mm:dd:hh:mm:ss'''|グリニッジ標準時に対する開始日時を指定。 :--start-date-lat='''yyyy:mm:dd:hh:mm:ss'''|機内時間に対する開始日時を指定。 ~基本的には、--time-match-realが最初に使われるオプションです。 シミュレータ内の時刻はシステムクロックから読み込まれて、そのまま使われます。 シミュレータの時計はクロックと同期しているので、コンピュータのある場所と同じタイムゾーンの地域を仮想的に飛行する場合にはこのオプションが望ましいです。 けれども、世界の異なる箇所を飛行するときはそうではないかもしれません。 なぜならば、あなたのコンピュータと仮想的に飛行している場所との間には多くの時差があるからです。 ~--time-match-localオプションは、これを考慮して、あなたのいる現実世界と仮想的に飛行している場所とのタイムゾーンの差を計算します。 そして現地時間に同期します。 その後の3つのオプションは、起動日時を正確に特定するために使われます。 3つのオプションの違いは、コンピュータのシステム現地時間、グリニッジ標準時、仮想フライト内の現地時間のどれを基準点にとるかです。 以上5つのオプションは排他的に使われるように設計されています。 しかし、これらの機能によって設定された値は--time-offset機能を使って修正できます。 この機能は、他の機能によってすでに設定されている値に、指定した時間を加えます。 ***3.5.9 ネットワークオプション [#dfba1a41] :--httpd='''port'''|指定ポートでhttpサーバを有効化。 :--telnet='''port'''|指定ポートでtelnetサーバを有効化。 :--jpg-httpd='''port'''|指定ポートでスクリーンショット用httpサーバを有効化。 :--enable-network-olk|Oliver Delises氏のマルチパイロットモードを有効化。 :--disable-network-olk|Oliver Delises氏のマルチパイロットモードを無効化(デフォルト)。 :--net-hud|ネットワーク情報をHUDに表示。 :--net-id='''name'''|自分のコールサインを指定。 ***3.5.10 ルート・ウェイポイントオプション [#n37e535d] :--wp='''ID[@alt]'''|GCオートパイロットにウェイポイントを指定。 このコマンドを多数列挙することにより、複数のウェイポイント(すなわちルート)を指定できます。 :--flight-plan='''[file]'''|ウェイポイントがいくつもあるときに便利。 読み込むファイルを指定できます。 > 注意: これらのオプションは、自分が何をしているか分かっている上級ユーザ向けです。 ***3.5.11 入出力(I/O)オプション [#g230e655] :--garmin='''params'''|Garmin GPSプロトコルを使ってコネクションを張る。 :--joyclient='''params'''|Agwagonジョイスティックにコネクションを張る。 :--native-ctrls='''params'''|FGネイティブコントロールプロトコルを使ってコネクションを張る。 :--native-fdm='''params'''|FGネイティブFDMプロトコルを使ってコネクションを張る。 :--native='''params'''|FGネイティブプロトコルを使ってコネクションを張る。 :--nmea='''params'''|NMEAプロトコルを使ってコネクションを張る。 :--opengc='''params'''|OpenGCプロトコルを使ってコネクションを張る。 :--props='''params'''|双方向的なプロパティマネージャを使ってコネクションを張る。 :--pve='''params'''|PVEプロトコルを使ってコネクションを張る。 :--ray='''params'''|Ray Woodworthモーションチェアプロトコルを使ってコネクションを張る。 :--rul='''params'''|RULプロトコルを使ってコネクションを張る。 :--atc610x|atc610xインターフェースを有効化。 ***3.5.12 デバッグ用オプション [#wca0e87e] :--trace-read='''params'''|あるプロパティに対する読み込みをトレース。 複数列挙できます。 :--trace-write='''params'''|あるプロパティに対する書き込みをトレース。 複数列挙できます。 **3.6 ジョイスティック・サポート [#j810bd8a] キーボード一つで機械を制御するセスナのパイロットを想像できますか? 飛行感覚を正しく得るためには、ジョイスティックまたはヨーク(操縦桿)に加えてラダー(方向舵)ペダルが必要ですよね? ですが、いくつかのオペレーティングシステム用に市販されているジョイスティックやフライトスティック、ヨーク、ペダルなどには種々様々な組み合わせがあるので、FlightGearにおけるジョイスティック・サポートは重要です。 FlightGearには、どんなジョイスティックやヨーク、ペダルが取り付けられても自動的に検出するジョイスティック・サポートが統合されています。 とにかくお試しください! もしうまく動作しなくても、がっかりせずに落ち着いて! FlightGearのメニューから Help -> Joystick Information を選ぶと、あなたのどのジョイスティックが検出されているのかを見ることができます。 残念なことに、FlightGearでサポートされた(恐らく英語以外の)オペレーティングシステムと、市販のジョイスティックの組み合わせによっては、うまく動作しないことがあります。 基本的には、うまく動かすためには2通りのアプローチ方法があり、前者をお勧めします。 ***3.6.1 内蔵されているジョイスティック・サポート [#q49a27ca] ''訳注:'' 下記の「[[Windowsユーザ向けのいくつかのヒント>#joy7]]」には、日本のWindowsユーザにとって重要な情報が記載されています。-toshi ◎ &aname(joy1){''全般的な留意点''}; ジョイスティックの自動検出を有効にするためには、各ジョイスティックごとに、ジョイスティック・バインディング用のxmlファイルが存在する必要があります。 このファイルには、どの軸とボタンがFlightGearのどの機能を操作するのに使われるのかが記載されています。 軸またはボタンを機能に関連付けることを「バインディング」と呼びます。 全てのバインディング・ファイルを探す場所をFlightGearに伝える役目をするのは、ジョイスティック記述ファイル > ''$FG_ROOT/joysticks.xml'' < です。このファイルの中に対応する項目があるならば、バインディング・ファイルはどんな名前でも許容されます。 後ほど、例を使って説明します。 いくつかのメーカのジョイスティックに対しては、数種類のバインディング・ファイルがメーカごとに名前の付いたフォルダの中に含まれています。 例えば、もしCH Productsのジョイスティックをお持ちなら、 > ''$FG_ROOT/Input/Joysticks/CH'' というフォルダを見て、ご自身のジョイスティックが動きそうなファイルを探してください。 そのようなファイルが存在し、ご自身のジョイスティックが他のアプリケーションで動作しているならば、FlightGearの初回起動時にそのジョイスティックは動作するはずです。 そのようなファイルが存在しない場合は、後節で、FlightGearに含まれるサンプルからカット&ペーストしてファイルを作成する方法について説明します。 ◎ &aname(joy2){''ジョイスティックが有効であることの確認''}; あなたのコンピュータはジョイスティックを認識していますか? 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環境下で動作している場合には上記の方法は使えませんが、次の項に進んでください。 ◎ &aname(joy3){''ドライバがジョイスティックを認識していることの確認''}; FlightGearには、js_demoと呼ばれるユーティリティが同梱されています。 これは、システムに接続されているジョイスティックの番号、それぞれの名称、能力を報告します。 Linux環境下では、 ''FlightGear/bin'' フォルダから次のようにしてjs_demoを実行できます。 > $ cd /usr/local/FlightGear/bin > $ ./js_demo Windows環境下では、コマンドプロンプト(スタート/すべてのプログラム/アクセサリ)を開き、FlightGearのバイナリ・フォルダに行って以下のようにプログラムを起動します(FlightGearは ''c:\FlightGear'' にインストールされていると仮定)。 > ''cd \FlightGear\bin'' > ''js_demo.exe'' 私たちの環境では、最初の何行かの出力はこのようになります(スクロールが早くて画面を通り過ぎてしまう場合は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ファイルを記述しようとする際に必要になります。 ◎ &aname(joy4){''軸とボタンの番号付けの特定''}; 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進法に混乱させられることなく、それぞれの操作に対する軸番号とボタン番号を素早く書き出すことができます。 ◎Writing or editing joystick binding xml files ◎Telling FlightGear about your new bindings xml file [[原文:http://www.flightgear.org/Docs/getstart/getstartch3.html#x8-390003.6.1]]をご参照ください。 ◎&aname(joy7){''Windowsユーザ向けのいくつかのヒント''}; 基本的には、Windows上でも上記の手順が機能します。 ご自分のジョイスティック/ヨーク/ペダルがうまく動作している、または上記の方法でうまく行ったのでしたら、そのままで結構です。 しかし、残念ながらまだいくつか問題のある方がいるかもしれません。 1つ目の問題は、non-US版のWindowsを使っているユーザに関係があります。 上述のように、ジョイスティック名はjs_demoプログラムから得ることができます。 もしnon-US版のWindowsを使っていて、上記で名づけたジョイスティックの.xmlファイルがそのような特殊なジョイスティック名を含んでいなければ、その適合するファイルの最初にその特殊な名前を以下のような形式で追加してください。 > ''<name>Microsoft-PC-Joysticktreiber </name>'' < ''joysticks.xml''ベースファイルには新しい項目は要りません。 不幸にして、Windows上のジョイスティックサポートにはもうひとつの抜け穴があります。 2つのUSBデバイスを取り付けている場合(例えばヨークとペダル)はこのケースに該当するかもしれません。 この場合、同じドライバ名が2重に報告されます。 このケースでは、(0と1の中から)0番にヨークを割り当てることにより、少なくともヨークを動作させることができるようになります。 このために、エルロンを制御するヨークを回してjs_demoの出力を見てください。 コロンの最初のグループ(device0用)の図形が変化すれば、正しく割り当てられています。 もしコロンの2番目のグループ(device1用)の図形が変化するならば、まずは優先デバイスがヨークになるようにしなくてはなりません。 そうするためには、Windowsの「コントロール パネル」に入り、(''訳注:'' クラシック表示で)「ゲーム コントローラ」を開き、「詳細設定」ボタンを選択してください。 ここで「優先」デバイスにヨークを選ぶことができます。 その後、もう一度js_demoを実行して割り当てを確認してください。 今度はヨークが図形の最初のグループをコントロールするはずです。 残念ながら、同じ方法を使ってペダルも操作できるようにする方法は分かっていません。 したがって、このようなケースなどにはジョイスティックコントロールを割り当てる別の方法を試してみることになるかもしれません。 > ''訳注:'' FlightGear v0.9.10 for win でCH Pro Pedal(ジョイスティック0)とSaitek X45(ジョイスティック1)の2台を使うには、単に''$FG_ROOT/joysticks.xml''のPropertyList行以下を以下のように修正するだけで良いようです。-toshi <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"/> <js-named/> <!-- dummy to keep SimGear happy --> </PropertyList> > 参考: 「[[2007/5/17のsambarさんのフォーラム投稿記事:http://www.jp.flightgear.org/modules/newbb/viewtopic.php?topic_id=361&forum=1&post_id=869#forumpost869]]」 補足:先述のWindowsの「優先デバイス」の設定でヨーク(あるいはスティック)を優先デバイスに設定した場合には、ヨークがjs0,ペダルがjs1になるように設定する必要があります (どういう条件でデバイスの優先順位が設定されるのかは知りませんが) -sambar ***3.6.2 Joystick support via .fgfsrc entries (未訳) [#w292fc50] [[原文:http://www.flightgear.org/Docs/getstart/getstartch3.html#x8-450003.6.2]]をご参照ください。 **3.7 私たちの格納庫にある機体一覧 [#j93076ea] 以下の表は、FlightGear CVSリポジトリに現時点で存在するほとんどの航空機をリストしています。 インストール時には、ディストリビュータが選択した一部分が含まれていることでしょう。 より多くの航空機が http://www.flightgear.org/Downloads/aircraft/index.shtml からダウンロードできます。 インストール方法については「[[第2章>FlightGearマニュアル/第I部/第2章]]」をご覧ください。 第1列は航空機の名前、 第2列はコマンドライン使用時に指定する起動オプション''--aircraft=''、 第3列はFDM(飛行力学モデル、[[1.4節>FlightGearマニュアル/第I部/第1章#g1eebf31]]を参照)、 第4列は備考です。 ここで、"no exterior model"というのは、その航空機特有の外観モデルが存在しないことを意味します。 その結果、ビューモードを外側にするとデフォルトの青と黄のグライダーが見えます。 |Aircraft type |aircraft option |FDM |Remarks|h |1903 Wright Flyer |wrightFlyer1903 |UIUC |The very first powered aircraft| |A6M2 Zero |A6M2 |YASim |Japanese WWII fighter| |Aerostar Super 700 |aerostar700 |YASim |Twin-engined light aircraft| |Airbus A300 |A300 |JSBSim|2-engined airliner| |Airbus A320 |A320 |JSBSim|2-engined airliner| |Airbus A320 |A320 |JSBSim|2-engined airliner| |Airbus A320-131 |A320-111 |JSBSim|2-engined airliner| |Airbus A300-111 |A320-131 |JSBSim|2-engined airliner| |Airbus A380 |A380 |JSBSim|4-engined double-decker airliner| |Airwave Xtreme 150 |airwaveXtreme150|UIUC |Hang-glider| |Anotov AN-2 |an2 |JSBSim|Russian light transport biplane| |Antonov AN-225 |AN-225 |YASim |Russian over-sized cargo aircraft| |ASW-20 sailplane |asw20 |YASim |Glider| |ASW-20 sailplane (UIUC) |asw20-v1-nl-uiuc|UIUC |Glider| |Avro Vulcan B.2 |vulcanb2 |JSBSim|British sub-sonic strategic bomber| |BAC TSR2 |BAC-TSR2 |YASim |Ill-fated strike aircraft| |Beech 99 |beech99-v1-uiuc |UIUC |Twin-engined turbo-prop aircraft| |Beech 99 |beech99-yasim |YASim |Twin-engined turbo-prop aircraft| |Beechcraft B1900D |b1900d |YASim |Twin-engined turbo-prop aircraft| |Bell 206 JetRanger |bell206 |YASim |Helicopter| |Boeing 314 |Boeing314A |JSBSim|Flying boat airline| |Boeing 707 |707 |JSBSim|4-engined early jet airliner| |Boeing 737-300 |737-300 |JSBSim|2-engined airliner| |Boeing 747 |747 |YASim |4-engined airliner| |Boeing 747-100 |747-100 |JSBSim|4-engined airliner| |Boeing 747-200 |747-200 |JSBSim|4-engined airliner| |Boeing 787-8 Dreamliner |787 |YASim |2-engined airliner| |Boeing B-29 Superfortress |b29 |YASim |4-engined strategic prop bomber| |Boeing B-29 Superfortress |b29-jsbsim |JSBSim|4-engined strategic prop bomber| |Boeing B-29 Superfortress |b29-yasim |YASim |4-engined strategic prop bomber| |Boeing B-52F |B-52F |YASim |Strategic bomber| |Boeing CH47 Chinook |ch47 |YASim |Helicopter| |Boeing E-3B |E3B |JSBSim|Airborne Warning and Control System (AWACS)| |Boeing KC-135 |KC135 |JSBSim|Air-to-air refueling tanker| |Bristol Beaufighter TF X |beaufighter |YASim |4-engined strategic prop bomber| |British Aerospace Harrier |harrier |YASim |VTOL jet fighter/bomber| |Canberra BI8 |CanberraBI8 |YASim |First-generation jet bomber| |Cessna 150x prototype |c150 |JSBSim|Light aircraft| |Cessna 172P Skyhawk (1981 model) |c172p |JSBSim|Light aircraft (default)| |Cessna 172P Skyhawk (1981 model), 2D panel|c172p-2dpanel |JSBSim|Light aircraft| |Cessna 172R |c172r |JSBSim|Light aircraft| |Cessna 182 |c182 |JSBSim|Light aircraft| |Cessna 182 (2D panel) |c182-2dpanel |JSBSim|Light aircraft| |Cessna 310R |c310 |JSBSim|Twin-engined light aircraft| |Cessna 310R with IFR panel |c310-ifr |JSBSim|Twin-engined light aircraft| |Cessna 310 (YASim) |c310-yasim |YASim |Twin-engined light aircraft| |Cessna 310R (1979 model) with 3D cockpit |c310dpm-3d |JSBSim|Twin-engined light aircraft| |Cessna 310U3A w. 3D cockpit |c310u3a |JSBSim|US Navy twin-engined light aircraft| |Cessna 310U3A |c310u3a-jsbsim |JSBSim|US Navy twin-engined light aircraft| |Cessna Citation-Bravo |Bravo |YASim |Executive jet| |Cessna Citation-II |Citation-II |YASim |Executive jet| |Cessna T-37 |T37 |JSBSim|Jet training aircraft| |ComperSwift |ComperSwift |YASim |1930s air-racing monoplane| |Colditz Escape Glider |colditz |JSBSim|Glider| |Concorde |Concorde |JSBSim|Supersonic airliner| |Dassault Mirage 2000C/RDI |mirage2000 |JSBSim|French delta-winged fighter| |Douglas A4 Skyhawk (YASim) |a4 |YASim |US Navy attack aircraft| |Douglas A4D (A-4C) Skyhawk |a4-uiuc |UIUC |US Navy attack aircraft| |Douglas A4F Skyhawk |a4f |YASim |US Navy attack aircraft| |Douglas DC-3 |dc3 |YASim |Twin-engined early airliner| |Ecureuil AS 350 |as350 |YASim |Helicopter| |English Electric Lightning F.1A |lightning |JSBSim|British supersonic fighter| |Eurocopter Bo105 |bo105 |YASim |Helicopter| |Eurocopter EC135 |ec135 |YASim |Helicopter| |Fairchild-Republic A-10 |A-10 |YASim |Close Air Support Attack Aircraft| |Fokker 100 |fokker100 |JSBSim|2-engined airliner| |Fokker 50 |fokker50 |JSBSim|2-engined turboprop airliner| |Fokker 70 |fokker70 |JSBSim|2-engined airliner| |Fokker Dr.1 |fkdr1-v1-nl-uiuc|UIUC |German WWI fighter| #br |Aircraft type |aircraft option |FDM |Remarks|h |General Dynamics F-16 |f16 |JSBSim|Fighter| |General Dynamics F-16 w. 3d cockpit |f16-3d |JSBSim|Fighter| |General Dynamics F-16AM |f16-mlu |JSBSim|Fighter| |General Dynamics F-16AT (Falcon-21)|f16at |JSBSim|Fighter| |de Havilland Beaver (floats) |dhc2F |YASim |Single-engined bush-plane| |de Havilland Beaver (wheels) |dhc2W |YASim |Single-engined bush-plane| |de Havilland SeaVixen FAW2 |sea-vixen |YASim |British carrier-borne jet aircraft| |Hawker Hunter GA11 |hunter |YASim |Jet fighter| |Hawker Hunter 2 Tanks |hunter-2tanks |YASim |Jet fighter| |Hawker Hurricane IIb |hurricaneIIb |YASim |British WWII fighter| |Hawker Seahawk |seahawk |YASim |British carrier-borne jet aircraft| |Junkers Ju-52-3m |ju52 |YASim |German 3-engined transport/bomber| |Lockheed 1049 |Lockheed1049 |JSBSim|Prop airliner| |Lockheed F-104 Starfighter |f104 |JSBSim|1960s supersonic interceptor| |Lockheed F-80C |F80C |JSBSim|First USAF jet-fighter| |McDonell Douglas F-15 Eagle |f15 |JSBSim|Air superiority Fighter| |McDonnel Douglas MD11 |MD11 |JSBSim|3-engined wide-body airliner| |McDonnel Douglas MD11 |MD11-FINNAIR |JSBSim|MD11 in FinnAir livery| |McDonnel Douglas MD11 |MD11-KLM |JSBSim|MD11 in KLM livery| |Messerschmitt BF-109 G14 |bf109 |YASim |German WWII fighter| |Messerschmitt BF-109 G14 |bf109g |YASim |German WWII fighter| |MiG-15bis |MiG-15bis |YASim |Russian early jet fighter| |NTPS |NTPS |YASim |YF-23 ATF prototype| |NTPS-Eng |NTPS-Eng |YASim |NTPS Engineer panel| |NTPS-HD1 |NTPS-HD1 |YASim |NTPS Heads Down Display 1| |NTPS-HD2 |NTPS-HD2 |YASim |NTPS Heads Down Display 2| |NTPS-OTW-HUD |NTPS-OTW-HUD |YASim |NTPS OTW with HUD| |NTPS-OTW-NOHUD |NTPS-OTW-NOHUD |YASim |NTPS OTW without HUD| |NTPS-OTW-NOHUD |NTPS-OTW-NOHUD |YASim |NTPS OTW without HUD| |North American OV-10A |OV10_CDF |JSBSim|California Department of Forestry| |North American OV-10A |OV10_NASA |JSBSim|NASA| |North American OV-10A |OV10_USAFE |JSBSim|US Airforce| |North American P-51D |p51d |YASim |WWII fighter| |North American X-15 |X15 |YASim |Rocketplane| |North American X-15 |X15-new |JSBSim|Rocketplane| |Northrop T-38 |T38 |JSBSim|Super-sonic jet training aircraft| |Northrop/MD YF-23 |YF-23 |YASim |Prototype fighter aircraft| |ogeL experimental |ogel |JSBSim|Educational aircraft| |Ornithopter |ornithopter |UIUC |Bird-like aircraft| |paraglider |paraglider |JSBSim|Paraglider| |Pilatus PC-7 |pc7 |JSBSim|Turbo-prop training aircraft| |Piper J3C-65 Cub |j3cub |YASim |Classic light aircraft (1946 model)| |Piper PA24-250 Comanche 250 |pa24-250 |YASim |Light aircraft (1962 model)| |Piper PA28-161 Cherokee Warrior II |pa28-161 |YASim |Light aircraft (1979 model)| |Piper PA34-200T Seneca II |SenecaII-jsbsim |JSBSim|Twin-engined piston aircraft| |Piper PA34-200T Seneca II |SenecaII-yasim |YASim |Twin-engined piston aircraft| |Rascal 110 |Rascal110-JSBSim |JSBSim|Radio Controlled model| |Rascal 110 |Rascal110-YASim |YASim |Radio Controlled model| |Santa Claus (3d cockpit) |santa |YASim |Unique supersonic, cargo aircraft| |Schweizer 2-33 |sgs233 |YASim |Glider| |Siai Marchetti S.211 (UIUC) |marchetti |UIUC |Italian fast light aircraft| |Sikorsky CH-53E Super Stallion |ch53e |YASim |Helicopter| |Sikorsky S76C |s76c |YASim |Helicopter| |Soko J-22 Orao / IAR-93 |j22 |YASim |Yugoslav/Rumanian aircraft| |Sopwith Camel 1F.1 |sopwithCamel |UIUC |British WWI fighter| |Sopwith Camel |sopwithCamel-v1-nl-uiuc|UIUC |British WWI British fighter| |Space Shuttle |shuttle |JSBSim|Re-entry simulation| |Sukoi SU-37 |SU-37 |YASim |Russian multi-role jet aircraft| |Supermarine Seafire MkIIIc |seafireIIIc |YASim |British WWII carrier prop aircraft| |Supermarine Spitfire IIa |spitfireIIa |YASim |British WWII fighter| |Tupolev TU-114 |TU-114 |YASim |Russian 4-engined turboprop airliner| |Tupolev TU-154 |tu154 |YASim |Russian 3-engined jet airliner| |UFO |ufo |ufo |From the ’White Project’ of UNESCO| |USAF/NACA X-24B |x24b |JSBSim|Re-entry testbed| |Vought F4U-1 Corsair |f4u |YASim |Carrier-capable fighter/bomber| |Yard Stik |YardStik |JSBSim|Radio controlled model| ---- 編集メモ -新規作成。2007/06/17 toshi -3.5節を追加。2007/06/21 toshi -3.6節の一部を追加。2007/06/24 toshi -3.6節の一部を追加。2007/07/28 toshi