logo
ホーム •  フォーラム •  日本語wikiトップ •  アカウント情報 •  サイト内検索 •  新規登録
 ログイン
ユーザー名:

パスワード:


パスワード紛失

新規登録
 メインメニュー
 米国サイト
 オンライン状況
82 人のユーザが現在オンラインです。 (2 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 82

もっと...

零式戦闘機(A6M2)の開発

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 .5 .6 .7 .8 .9 | 投稿日時 2007-1-6 18:35
Tat  長老   投稿数: 375
ここへの投稿は初めてになります。Mac OS X への移植を担当しています Tat です。みなさま宜しくお願いします。

さて、FlightGear-users のメーリングリストで「クリスマスプレゼントとして、欲しい機体は何?」という話題が出たので「ゼロ戦」と答えたら、本当に CVS 上に A6M2 が追加されました。(制作者の Syd Adams に感謝しましょう)

機体開発もゼロ戦の知識もほとんどなかったですが、折角の好意に答えるべく色々調べながら試行錯誤してみたら、割といい感じになりつつあります。開発者の Syd とも色々話をして、私がパネルの詳細部分や機体データの情報収集とフライトモデルの改善を手伝う事になりました。苦労っぷり & 機体ファイル(α版)が FlightGear Mac OS X のサイト(英語)にありますので、詳しくはそちらもご覧下さい。

Modifying Zero Fighter

Modifying Zero Fighter (part 2)

FlightGear 初の日本製戦闘機ですので、良いものにして行きたいと思います。開発者の Syd も出来るだけ本物に近づけたいとの事だそうです。つきましては皆さんの FlightGear に A6M2 を追加して利用してみてください。感想や情報(特に計器類)をお待ちしています。

Syd の作成したモデルは A6M2-set.xml で私が変更を加えたものは A6M2b-set.xml と別ファイルにしています (いずれ統合されるでしょう。)
一応緑の機体 (A6M2b-green-set.xml) もありますが、こちらはほんのお遊び程度ですので全く正確ではありません。
投票数:13 平均点:6.15
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-1-12 21:35
tetsu  管理人   投稿数: 228
Tatさんこんばんは。
tetsuです。

いつもFlightGear MacOS版を開発していただき、ありがとうございます。
私はプログラミングに挑戦して何度も挫折してるので、ほんとうに尊敬しちゃいます。

さて、クリスマスプレゼントに零式戦闘機(A6M2)をいただけるとは、とっても幸せです。
Tatさん Syd Adamsさん サンタさん、ありがとう
バーチャルではありますが、戦闘の無い大空を零戦で気持ち良く飛べる事に感謝します。

微力ですが、零式戦闘機(A6M2)の開発のお役に立ちたいと思います。
投票数:7 平均点:7.14
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-1-19 12:55
Tat  長老   投稿数: 375
いえいえ、移植とバグ取りだけですので大した事はしていないんですけどね。
A6M2 は徐々にですが計器が追加されています。今日現在メインパネルの計器は全て揃っています。フライトモデルも一段落した状態です。今後徐々に改良されて行く事でしょう。

ちなみに疾風 (Ki-84) も作ってみました。計器や音はA6M2等のものを流用していますが、フライトモデルと3Dモデルは自作です。
http://macflightgear.sourceforge.net/home/aircraft/
からダウンロード可能です。ぼちぼち他の機体も作って行けたらと思っています。
投票数:13 平均点:3.08
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-4-25 22:45
zero1962  長老 居住地: 三重県  投稿数: 229
零式戦闘機(A6M2)の開発/移植ありがとうございました。
FGFSは久しぶりでありますが、早速、ダウンロードしました。
機体選択画面に零戦が出てきたときは、うれしさでむねがいっぱいでした。RUNをクリックしてしばらくまっているとFGFSのウィンドウがぷっつり消えてしまいました。いろいろコードをいじっているうちに音源設定を削除したらコクピット表示までたどり着きました。今は、P51dの音源を設定して、快適に飛行しております。(オリジナルの零戦音源を聞きたいのですがどうすればよいでしょうか?また、私のような事例は報告されていますか?)

また、Gキーで脚を格納しようとしても右脚が引き込まれません。
システムの故障設定はしておりません。どうすれば脚を左右正常に格納できるのでしょうか?よろしくご教示お願いします。
投票数:11 平均点:5.45
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-12 8:45
zero1962  長老 居住地: 三重県  投稿数: 229
原因はわかりませんが、A6M2-CVS用をダウンロードしたところ
脚が左右正常に格納できることがわかりました。実機らしくタイミングをずらして格納するところが、芸が細かいですね。
投票数:12 平均点:3.33
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-18 0:23
toshi  長老   投稿数: 1526
toshiです。

Tatさん、新機種の開発ありがとうございます。とても素晴らしいことですね。

zero1962さんと同様に、私も手こずってしまいましたが、以下のように設定を変更してA6M2を無事起動できました。
(注: FlightGear 0.9.10 for Win と A6M2-0.9.10-20070205.tar.gz を使う場合です)

Aircraft\A6M2\a6m2-sound.xmlファイルの19行目を以下のように修正する。
修正前: <path>Aircraft/dhc2/Sound/starter.wav</path>
修正後: <path>Sounds/engstart.wav</path>

補足しますと、修正前の行ではdhc2(de Havilland Beaver)という、デフォルトではインストールされていない機体のwaveファイルを参照しています。
このファイルが無い状態でA6M2を起動しようとすると異常終了します。

また、http://www.flightgear.org/Downloads/aircraft/ で公開されているdhc2(dhc2_20060315.zip)をインストールしても、starter.wavが含まれていないためにやはり起動できずに異常終了してしまいます。

そこで当面の回避方法として、dhc2がエンジン起動時に参照するSounds/engstart.wav(Soundsフォルダに初めから入っているはず)をA6M2でも参照するように修正しました。

以上です。
投票数:11 平均点:5.45
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-19 2:11
toshi  長老   投稿数: 1526
toshiです。

FlightGear 0.9.10でA6M2を正常に動かす方法についての追加情報です。
もう少し作者さんの意図に近づける(かもしれない)方法を考えてみました。

1. A6M2をインストール。

2. dhc2をインストール。
http://www.flightgear.org/Downloads/aircraft/

3. CVS版dhc2の starter.wav をダウンロードし、FlightGear\data\Aircraft\dhc2\Sound に保存。
http://cvs.flightgear.org/cgi-bin/viewvc/viewvc.cgi/data/Aircraft/dhc2/Sound/starter.wav?view=log
の最新revision行(現在1.1)の(download)を辿ってください。

※ a6m2-sound.xmlファイルを修正する必要はありません。

以上です。

p.s. FlightGear v0.9.11-pre1(ソースのみ)がリリースされたようです。
投票数:10 平均点:2.00

通常 Re: 零式戦闘機(A6M2)の開発

msg# 1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-19 16:52
zero1962  長老 居住地: 三重県  投稿数: 229
zero1962です。
A6M2の機体を楽しんでおります。
ところで、右脚の格納不良が発生するのですが、これはバグでしょうか、それとも忠実な模擬なのでしょうか、皆様は経験尾ありでしょうか。ちなみに、cvs版の機体では異常が起きません。
投票数:8 平均点:6.25

通常 Re: 零式戦闘機(A6M2)の開発

msg# 1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-19 18:47
toshi  長老   投稿数: 1526
toshiです。

0.9.10用のA6M2とA6M2bで飛行し、g/Gキーを何度か試してみましたが、特に不具合はありませんでした。

機体のバグではなく、何か別の原因があるような気がします。

zero1962さんのところで発生する右脚の格納不良は、毎回再現していますでしょうか?
また、コマンドプロンプトに何かメッセージは出ていませんでしょうか?
もしご自身で設定ファイルを修正したのでしたら、修正内容に誤りが無いか確認してみてください。
投票数:10 平均点:5.00

通常 Re: 零式戦闘機(A6M2)の開発

msg# 1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-20 18:21
zero1962  長老 居住地: 三重県  投稿数: 229
0.9.10用のA6M2とA6M2bではほぼ確実に不良が発生します。
サウンド・パラメータ以外変更しておりません。コンソールにも
これといったエラーは表示されておりません。(レンダリング関連のエラーがありました。)

とりあえず、CVS版で正常に機能しているのでこちらを利用しております。
投票数:7 平均点:7.14

通常 Re: 零式戦闘機(A6M2)の開発

msg# 1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-20 23:33
toshi  長老   投稿数: 1526
toshiです。

「レンダリング関連のエラー」は気になるところですが、私の環境では不具合が再現できないため、対処方法はちょっと分かりません。ごめんなさい。

以下は余談ですが、Fileメニューの Browse Internal Properties で内部の状態を見ることが出来ます。

gear/gear/position-norm[0] が左脚の位置
gear/gear[1]/position-norm[0] が右脚の位置
を示しており、0〜1の間の値をとっています(0が完全収納、1が完全に出ている状態)。
この値が中途半端なところで止まっているんでしょうね。

あまりお役に立てずにすみません。
もしcvs版でも発生して困ってしまうようなことがありましたら、また声をかけてください。
投票数:12 平均点:5.83

通常 A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2007-5-26 22:30
zero1962  長老 居住地: 三重県  投稿数: 229
よく確認してみるとcvs版の機体もほぼ確実に右脚が格納できなくなってしましました。
gear/gear[1]/position-norm[0] が右脚の位置が、0.9xxxでした。この値を0.0に設定すると脚は格納できましたがこんどは、
脚展開が中途半端な状態になってしまいます。なぞだ。
以前は確かに正常動作していたと思ったのですが、元にもどらなくなってしまいました。一度初心に帰って思い出してみます。
投票数:9 平均点:6.67

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 1:53
toshi  長老   投稿数: 1526
toshiです。

# FlightGearの動作が異常に重たい方、参考にしてみてください。

FlightGearの処理速度が遅いと、確かにA6M2のギアを格納する際に右脚が0.948..で止まってしまうことを確認できました。

処理速度の遅さがPCの性能に起因している場合はちょっと直すのが難しいのですが、FlightGear の 3D Clouds に関するバグ(だと思う)にはまってしまっているだけなら、解決できるかもしれません。

まず、A6M2とRJTF(Chofu)で、FlightGear Wizard (fgrun) の 3D Clouds にチェックが入っていない状態でRunしてください。

コマンドプロンプトのような画面に

Error: RenderTexture requires the following unsupported OpenGL extensions:
WGL_ARB_extensions_string

といったエラーが表示されていれば、下記の手順をお試しください。
(もし異なるエラーだと、効果ないかもしれません)。

View > Rendering options で「Show frame rate」をチェックし、画面右下に表示された数字を覚えておいてください。
私の場合は、ここで1〜5fps(フレーム毎秒)でした。

引き続き、View > Rendering options で「Enable 3d clouds」にチェックが入っていれば、外してください(ここがポイントです)。

Escキーを押し Exit をクリックしてFlightGearのメインプログラムを終了してください。

FlightGear Wizard は立ち上がったままですので、再び Run をクリックしてFlightGearを起動してください。

画面右下のフレームレートの数字を前回と比較し、変化があるかどうかを確認してください。
私の場合は30fpsになりました。

滑走路上ではありますが、gキーでギアを格納し、/gear/gear[1]/position-norm[0] の表示が0になることが確認できれば成功です。

以上の現象を、FlightGear 0.9.10 + fgrun 0.4.7、及び FlightGear 0.9.10 + fgrun 0.4.8 で確認しました。

※要するに、FlightGear Wizard で 3D clouds をチェックしてはいけない、というのが結論です。
本体のViewメニューから Rendering を設定する分には問題ありませんが、基本的には重たくなるので、不要なレンダリング処理はしない方が良いと思います。
投票数:17 平均点:4.71

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 7:59
zero1962  長老 居住地: 三重県  投稿数: 229
私の環境では、フレームレートが4〜6fpsでした。
「Enable 3d clouds」にチェックをオフにしましたがレートに特に変化はなく、若干6である状態が増えたようでした。この状態では、脚格納に成功する場合も時々ありました。失敗する場合、下記のレンダリング・エラーがでました。
RenderTexture Error: wglCreateContext() failed.
いろんなオプション(RandumOBJ,AI, etc)をははずせば何とか
脚収納確立が高くなりましたが、展開失敗もあります。

早朝からご回答いただき本当にありがとうございました。
なんとか脚収納時間を短くするパラメータを探したいと思います。
投票数:10 平均点:7.00

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2007-5-27 8:35
toshi  長老   投稿数: 1526
toshiです。

> RenderTexture Error: wglCreateContext() failed.

このエラーは出たことが無いのですが、エラーが出ないようにするのが近道のような気がします。
もしこのエラーが出ていても10fps以上のフレームレートが出ている方がいれば、教えてください。

zero1962さん、すみませんがちょっとお願いしたいことがあります。

ウィザード画面でA6M2, RJTF(Chofu)として、極力オプションを減らした状態にした時に、Show command line で出てくるオプションを全てコピー&ペーストで報告していただけませんでしょうか?

また、Run して上記レンダリングエラーが再現することを確認した後、Viewメニューの Rendering Options を開き、チェックが入っている項目を教えてください。

ちなみに私の環境ですと、こんな感じです。

C:/Program Files/FlightGear/bin/win32/fgfs.exe
--fg-root=C:/Program Files/FlightGear/data
--fg-scenery=C:/Program Files/FlightGear/data/Scenery;C:/Program Files/FlightGear/scenery/
--airport-id=RJTF
--aircraft=A6M2
--control=joystick
--disable-random-objects
--disable-specular-highlight
--disable-ai-models

起動後のRendering Options: Show frame rate
投票数:12 平均点:3.33

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 8:46
toshi  長老   投稿数: 1526
もしよろしければもうひとつ、ビデオカードの名称とWindows上で設定している解像度、色数を教えてください。
(私はGeForce 6150 LE, 1360x768, 16ビットです)

PC本体のスペックは、
以前の書き込みで了解しております。
投票数:13 平均点:3.08

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 11:44
zero1962  長老 居住地: 三重県  投稿数: 229
アダプタ:Intel(R) 82865G Graphics Controller
ディスプレィ:Fujitsu VL-17DS2
解像度:1280x1024 16ビット High Color
です。
ちなみに、飛行結果ファイルの記録、Atlasのソケット出力を追加すると、レートは1まで下がります。

初心に帰って、零戦のサウンドをP-51Dのサウンドを使用すると
脚の出し入れが可能になりました。(こちらのほうが負荷が軽いのかもしれません)

いろいろ、ご検討いただき、ありがとうございます。
投票数:12 平均点:3.33

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 12:20
toshi  長老   投稿数: 1526
既にお試しかもしれませんが、82865Gのドライバもチェックすると良いかもしれませんね。

Windows付属/Windows UpdateのドライバはOpenGL未対応の可能性があるため、Intelから最新のドライバを入手する必要があります。

グラフィックス / ビデオ・ドライバーのバージョン確認方法

IntelクA迸82865G Graphics Controller OpenGL* Support
投票数:11 平均点:3.64

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2007-5-27 12:22
zero1962  長老 居住地: 三重県  投稿数: 229
私の動作条件は以下の通りです。

C:\relax\FlightGear\bin\Win32\fgfs.exe
--fg-root=C:\relax\FlightGear\data
--fg-scenery=C:\relax\FlightGear\data\Scenery;C:\relax\FlightGear\scenery
--airport-id=RJTF
--aircraft=A6M2b
--control=joystick
--disable-splash-screen
--disable-intro-music
--disable-random-objects
--disable-hud-3d
--disable-specular-highlight
--disable-ai-models
--disable-clouds
--shading-flat
--fog-disable
--geometry=800x600
--timeofday=noon

実行結果エラーのメッセージが変わってしまいました。

Failed to find runway 28R at airport RJTF
Error: RenderTexture requires the following unsupported OpenGL extensions:
WGL_ARB_extensions_string

ちなみにsky Blendのチェックをはずすと起動が異常終了します。

起動後のフレーム・レートは、1です;

Run後に右脚の異常はありましたが、
RenderTexture Error: wglCreateContext() failed.
はでませんでした。

いろいろ、お手数をおかけします。ソフトウェアって不思議なことばかりで、現状と条件の関係がよくわからなくなりました。
投票数:10 平均点:6.00

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 12:32
zero1962  長老 居住地: 三重県  投稿数: 229
ご提示のサイトから最新バージョンのDL方法がよくわからなかったのですが、現状のドライバのプロパティにOpenGLの設定項目があり、一部圧縮機能がオフであったのをオンにしてためしてみます。(一応OpenGL対応であると思われます。)
投票数:9 平均点:3.33

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 13:50
toshi  長老   投稿数: 1526
toshiです。

いろいろ不思議なことが出てきますね

FlightGear Wizardのコマンドラインオプション一覧を拝見し、こちらも同じ設定にしてみましたが、特にエラーは出ずに30〜60fps(いつもと同じ)で問題なく動作しました。
ですので、Wizard側の設定内容は問題ないように思います。

> Failed to find runway 28R at airport RJTF

これは私も出てますので気にしなくて大丈夫です。

> Error: RenderTexture requires the following unsupported OpenGL extensions:
> WGL_ARB_extensions_string

これが出たならば、もう一度FlightGear本体の View メニューの Rendering Options を開き、チェックが入った項目を確認してみてください。
私の場合、Rendering Optionsは Show frame rate のみにチェックしています。

現在御使用のドライバがOpenGL対応である件、了解です。
しばらくはそのまま使っていただいて、FlightGearの設定を詰めていくのも賢明な選択かもしれません。
特にメーカ製PCの場合は独自のドライバを使っている場合もありますしね。

と言いつつ、もしドライバのアップデートをする場合ですが、先ほどお伝えした「IntelクA迸82865G Graphics Controller OpenGL* Support」から「Download the latest graphics drivers for the Intel 82865G graphics controller」に行き、XP Homeを選択して、表示されたファイル(exeでもzipでも)をダウンロードすればよいかと思います。最新ドライバのバージョンは6.14.10.4396 (Production Version 14.17.0.4396) です。

Intelのドライバを入れるのが気が引ける場合は、富士通のサポートサイトにある
Intel(R) 865G Windows(R) XP Display Driver
をダウンロードする手もあります。こちらのバージョンはVer.6.14.10.3735 になります。
ひょっとすると、今お使いのドライバと同じかもしれません。
投票数:18 平均点:4.44

通常 Re: フレームレート大改善

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 21:05
zero1962  長老 居住地: 三重県  投稿数: 229
>私の場合、Rendering Optionsは Show frame rate のみにチェッ>クしています

の意味をよく理解していませんでしたが、その通りにすると、フレームレートが、50〜100前後に大改善しました。
まだ、右脚の異常再現は確かめておりませんが、きっと大丈夫でしょう。いろいろご指導ありがとうございました。
投票数:9 平均点:4.44

通常 Re: フレームレート大改善

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-5-27 22:32
toshi  長老   投稿数: 1526
そ、それは大躍進ですね!?
説明の書き方が長ったらしくてすみませんでした。

今は、オプションの設定を徹底的にdisableにしている状態でしょうから、お好みに応じて、フレームレートの様子を見ながら、FlightGear Wizard の設定を1つずつノーマルに戻していくのも良いかもしれません。

ノーマル設定に近い状態にした時にオプションのリストは、「 2007-5-27 8:35の私の書き込み」をご参照下さい。

注意すべきことは1つ、FlightGear Wizard 画面の 3D Clouds (experimental) には決してチェックを入れないということです。

FlightGear 0.9.10 for win のみかもしれませんが、一度でもWizard画面で3D Cloudsのチェックを入れてしまうと、後でWizard画面の3D Cloudsのチェックを外してもおかしな状態がおきてしまいます。

もしやってしまったら、「 2007-5-27 1:53の私の書き込み」の手順を参考にして、復旧を試みてください。

3D Cloudsを使いたい方は、FlightGear起動後にメニューから View > Rendering options を辿って「Enable 3d clouds」を使いましょう。

以上、手前味噌の引用ばかりで恐縮ですが、とにかく劇的に改善してホントに良かったです
投票数:14 平均点:5.71

通常 Re: フレームレート大改善

msg# 1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2007-5-28 21:38
zero1962  長老 居住地: 三重県  投稿数: 229
本当にお世話になりました。私たちの経験が皆様のお役にたてるとうれしいです。どうもお付き合いありがとうございました。
ゼロ戦(零戦)は、なぜか思い入れのある機体でこれからも大事に乗っていきたいと思います。
投票数:14 平均点:5.00

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-6-28 8:32
Tat  長老   投稿数: 375
暫くさぼっていたら、凄く書き込まれていました。皆さん使って頂いてありがとうございます。

さて、脚の件ですが、私の環境では再現できませんでした。今度調べてみます。 Flightgear デフォルトではオリジナルの脚の動きが再現できず、 Nasal スクリプトに挙動を記述することで再現しております。この挙動は Nasal/a6m2.nas の ZeroGear というクラスにあります。多くの環境でテストできているとは言えないので、皆さんのフィードバックは有り難いです。

脚を出し入れする速度は ZeroGear クラスの delay という変数で行っています。これを変更すると出し入れの速度が変わります。

以下に簡単に関数の説明を書きます。
new: 初期化

transform:
左ギアを interplate でゆっくり動作させ、タイマーで delay 分待つ
その後 transformSecondGear を呼び出す
transformSecondGear:
右ギアを interpolate でゆっくり動かす

現状では右ギア動作時の逆方向への動作受付は禁止していないため、右脚格納時(引き出し時)に g(G) キーを押すと即座に左脚が動作します。

問題の部分は、考えられるとしたら、処理速度の低下などの原因により interpolate でゆっくり動作する部分が正常に終了していないことでしょうか。これに対する対症療法は、右ギア動作時にもタイマーをセットして、gear/gear[1]/position-norm[0] = 0 (又は 1) とすることでしょうか?
FlightGear 自体の挙動がおかしくなっている場合はこれでも治し用がありませんね。この場合はスクリプトで動作している計器類も狂ってしまう可能性があります。

なお、CVS 版と 0.9.10 とでZeroGear クラス自体は同じですが、若干脚の挙動が異なるかもしれません。これは Nasal スクリプト自体やFlightGear のプロパティーツリーなど、幾つかの違いがあるためです。

フレームレート改善には以下も参考にしてください
http://macflightgear.sourceforge.net/home/documents/troubleshooting/#content_Object_11

投票数:9 平均点:3.33

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-6-28 21:47
zero1962  長老 居住地: 三重県  投稿数: 229
おかげさまでフレームレート改善後、右脚異常は発生しなく
なりました。最初は、時間差をおいて左右の脚を収納するなんてとても凝っているなと思いました。ついでに脚故障まで模擬するなってっと思いましたが、原因は環境性能にありました。

私の大好きな機体を開発してくださってどうもありがとうございました。

ところで離陸時、揚力の得られたころ急に方向転換してしまうのは、本当の機体特性なのでしょうか?ほかの某FSではわりと素直に離陸しますが、この機体の離陸はちょっとコツがいりますね。
投票数:4 平均点:7.50

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-7-1 14:10
Tat  長老   投稿数: 375
右脚異常(というか環境が改善)されて良かったですね。
みなさにこの機体を使ってもらって、とても嬉しく思っています。
Syd も同じ気持ちでしょう

さて、離陸時の急な方向転換についてですが、程度はさておきレシプロ&プロペラな飛行機の特性だと思います。プロペラの回転モーメントにより滑走時&離陸時は機体は回転方向の反対に傾こうとします。滑走時のスピン(グランドループ)も同様の原理から発生します。このため戦闘機乗りはラダーと操縦桿(必要ならブレーキも)で体勢を慎重に整えながら滑走& 離陸を行い、離陸後に全ての力を抜く(ニュートラルに戻す)操作をしたそうです。

離陸時だけでなく、着陸時も注意が必要です。低速飛行時に機種を立て直そうと慌ててスロットルを前回にすると、機体は回転方向とは逆に回ります。新米パイロットはこれが原因で空母近くで転倒して大目玉を食らったりしたそうです。

ちなみに、この現象はゼロ戦に限った話ではなく、他のプロペラ飛行機でも発生します。「離陸時にラダーをめいいっぱい踏み込めないと戦闘機乗りとは言えない」という話もあるようですよ。

ゼロ戦の尾輪はFlightGearではロックされているのですが、実際はロック機構は
ありません。つまり実機はもっとグラウンドループしやすいことになります。
実機操縦の難しさを味わうには、"l" キーで尾輪ロックを解除してから操作してみてください。ちなみに疾風はデフォルトではロックされていないはずですから、ゼロ戦より難しいです。

さて、グランドループを防ぐ横着技として、エレベータを一杯に挙げた(操縦桿を引いた)状態で離陸する手があります。尾輪が地面に押し付けられるので、割と安定して滑走します。しかし、これにより空気抵抗も増えるので離陸距離が伸びます。戦闘機乗りは出来るだけ速く機体を水平にして抵抗をなくす為に操縦桿を前に少し倒していたそうです。尾輪が浮く寸前にグランドループが発生しますので、操縦桿及びラダー、ブレーキで機体を調整します。

これらの操作をキーボードだけで模倣するのは大変ですのでジョイスティックが必須ですね。ゼロ戦 & 疾風で是非戦闘機乗りの大変さを実感してください。

時間があったらゼロ戦の離陸&着陸マニュアルでも書いてみたいですが、0.9.11の準備作業もありますので、あまり期待しないでくださいね。
投票数:12 平均点:6.67

通常 Re: A6M2 右脚異常

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2007-7-1 16:05
zero1962  長老 居住地: 三重県  投稿数: 229
わかりやすい丁寧なご解説ありがとうございました。
FGフライトシミュレータのほかにYSフライトシミュレータ2000
や、MSフライトシミュレータ98を利用しておりますが、ユーザの容易さから離陸しやすくされておりますが、FGFSは、より実機に忠実で当時のパイロットの苦労が体験できるのですね。
シミュレータに求められるのもは、リアルな再現もある一方、本当は飛べない人にも飛べる楽しさを提供してくれる、難しいところですね。
このご説明をよんでますます、FGFSのゼロ戦が好きになりました。

ありがとうございました。
投票数:10 平均点:4.00

通常 A6M2 開発状況について

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2008-2-14 8:47
Tat  長老   投稿数: 375
最近「零戦秘録」という書籍を購入しました。秘録という言葉の通り戦時中は極秘であったA6Mシリーズの取扱説明書そのものです。当時の言葉なので読むのに若干時間が掛かりますが、図面や構造が良くわかり、いままでわからなかった事が殆どクリアになりました。少しずつ開発を進めて行き、本物に近づけて行きたいと思います。

さて、この本を読んだ成果を徐々に機体に反映するべく、JSBSim 版の A6M2 を開発しています。CVS 上には既に登録されていますが、初期テスト中なのか更新に間に合わなかったのか、ホームページ上ではまだ反映されていないようです。そのうちここにアップしますが、待ちきれない方は CVS から取得してください。

詳細なデータがある場合、JSBSim 版はいい感じでシミュレートしてくれます。Yasim 版に比べて以下の点で実機に近くなります。
- 自然なピッチ挙動 (Yasim 版はAOA=0付近で若干カクっとなります。)
- アドバースヨーの再現
- 細かいエンジン/プロペラ制御
- 一部の計器類の精度 (排気温計等)

Yasim では「最初から全開で飛べ!」な機体でしたが、実際はプロペラピッチは最低(離昇用)に合わせます。クルーズや高高度では高ピッチにして行きます。JSBSim 版ではこの辺が徐々にできつつあり、嬉しくなってきます。

もちろん課題も一杯です。ざっと挙げるとこんな感じです

- マニュアルピッチ制御付き恒速プロペラの再現 (ある程度できたけど詰めが必要)
- 空母着艦用フックの実装 (JSBSIm は最近サポートし始めたけど、FlightGear にはまだ反映されていない)
- 片脚ずつ引き込むギアの再現 (Yasim と共存できないかを模索中)
- 手動ブースト制御の再現(通常 JSBSim では自動)

これらが全て実装される頃には FlightGear 2.0 が出ている気がしますが、気長に頑張ります。:-p

投票数:6 平均点:1.67

通常 Re: A6M2 開発状況について

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2008-2-22 20:08
zero1962  長老 居住地: 三重県  投稿数: 229
零戦ファンの1人としてTatさんのご活動に感動いたしております。零戦の図解や史実を読んでも体感できなかったことを、このフライトギアを通して実感できることをとても楽しみに思います。操縦技術の未熟な私には、A6M2は難しい機体になっていくかも知れませんが、頑張って操縦できるようになりないと思います。Tatさんの機体開発を応援しております。
投票数:7 平均点:2.86

通常 Re: A6M2 開発状況について

msg# 1.1.1.1.1.1.1.1.1.1.1.1.2.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2008-2-26 11:48
Tat  長老   投稿数: 375
少し JSBSim 版を変更してCVSにコミットしました。苦労話を少し書いておきます。

JSBSim のエンジンとプロペラの調整というのはとても難しいものです。というのもエンジンのパラメタを少し変えるとプロペラ出力がガラッと変わり、プロペラのパラメタを少し変えるとエンジン出力に影響を与え.... と堂々巡りです。互いに引っ張り合いながらバランスを取っているので、なかなか速度と回転数とブーストを合わせる事ができません。これはかなり時間がかかりそうです。当時の定速プロペラに関する文献を片っ端から読みあさりながらソースコードを弄っているのですが、これまた上手いこと行きません。

また、零戦の取扱説明書には様々なデータが詳細に記されており、これを基に徐々に計器類の値を調整していっています。但しシミュレータの出力する値と合致しない部分もあるため結構苦労しています。最近はこれを補うために、零戦に関する手記を読み始めました。回想的な内容が多い中、時々操作方法や着艦方法について記述されているのでとても助かります。こういうのをちょっとずつ見ながら、より詳細な零戦に仕上げて行けたらと思っています。

現在の所、JSBSim 版での特性は以下のようになっています。
- 高度 4200m で フルスロットルの時に +150mmHg となる
(地上ではあっという間に +250mmHg になります)
- AMC により排気温度が 780 程度に調整 (混合比 14.7 にするには800°前後)
手動により調整する幅を持たせてある
(但し手動にするキーアサインが今はない... /controls/engines/engine/manual-mixture-control = 1 として M/m で調整する必要がある)
- 無風状態で4200m で最高出力 950 HP 280KT (計器)
AMC を調整し、エンジン出力最大の場合
- 上昇時のブーストは +150 mmHg に設定し 130Kt で 1000m/分の上昇率

こんなところでしょうか。
また、離陸から全速走行、巡航までの操作方法を簡単に記述しておきます。
** 離陸〜上昇
+ スロットル全開でチョークを外す (パーキングブレーキをShift-bでリリース
+ なぜか右に取られるのでラダーとブレーキで中央線に戻す
(実際は左に取られるはずですので、原因を調査中です。)
+ 操縦桿を前に倒し、機尾を上げ加速する(左に取られるので右ラダーで調整)
+ 70kt を過ぎたら右ラダーを当てつつ右エルロンを取り、操縦桿を引く
+ 真っすぐに離陸し、10ft の高度でギアを上げる
+ 140kt 程度迄加速し、ブーストを +150mmHg (公称最大ブースト) に下げる
+ 120-130 kt で 1000m/分 の上昇を行う (VSI が 1000を示す)
上昇中、ブーストが +150mmHg になるようにスロットルを調整する

** 最高速 @ 4200m
+ 4200m (13800 ft)まで上昇し、水平に戻す
+ フルスロットルで +150mmHg にする
+ ピッチレバーを利用し、ピッチを最大にする (Shift-n で回転数が落ち、加速し始める)
+ 無風だと 250kt 付近で止まるので、AMC を手動に切り替え、M/m で 排気温度を800°前後に調整する。
+ 280Kt まで行くはず (死ぬ程時間がかかりますので、多分嫌になるはず)

もう少し楽に最高速が出るようにプロペラ出力と必要なパワーのパラメタを調整してみようと思います。

** 巡航 @ 3000m
+ AMC を自動に戻す (/controls/engines/engine/manual-mixture-control=0 にする)
+ スロットルを絞り n でピッチを固定に戻し、回転数 2500rpm 以下にする
(実はまだ 最低ピッチ=25 にはなりません...)
+ エンジンが 2500rpm を越えないように 3000m まで降下する
+ 3000m で水平に戻す
+ スロットルを絞り、回転数を2100rpm 辺りにする
+ N キーでピッチを変えつつ回転数を 1850 付近にセット
+ スロットルを絞り 速度を135kt (計器)に調整する
+ AMC を手動に切り替え, M/m で排気温度を 800°にセットする
+ /engines/engine/fuel-flow-gph が 20 ガロン/時 前後を示すようになる

ちなみに坂井三郎氏は 17.7ガロン/時 = 67リットル/時の記録を持っているそうです。高度と速度、回転数を調整すればこの値に近づくでしょう。いかんせんエンジンが故障する事の無い状況なので、上手くいけばこれ以下の値を出せるでしょう。

ある手記には巡航時の吸入圧力は -170mmHg 程度という記載がありました。しかし現在の JSBSim のソースでは -500mmHg 付近と凄く低い吸入圧です。これはプロペラピッチを大きくしたときにエンジンの出力を増すという状況を再現していないためです。実際にはピッチを大きくすると回転が少し下がり、調速機が反応して吸入圧力を大きくし、回転を保とうとします。これが JSBSim では再現されず、ピッチが代わっても吸入圧力はそのままです。

これを修正しようとソースを変更しているのですが、なかなか上手く行きません。JSBSim 作者の Jon にでも相談してみようかと思います。

ちなみに今回のコミットでは、A6M2-jsbsim-test というファイルが追加されていますが、これは調速機のテスト用ですので 1.0.0 では正常には動作しません。(動作はしますが、速度や出力がおかしくなるでしょう)
私がメーリングリストに出した CVS/OSG 版の JSBSim パッチを当ててはじめて動作します。もっともまだ首尾よく動作はしてくれないのですが、色んな内部情報をモニタできるようにしているので改善には役立っています。

またそのうち状況をお伝えします。

投票数:10 平均点:6.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-9 5:30
yuichiro  居住地: ブラジル国サンパウロ州  投稿数: 4
最近Flightgearをはじめたyuichiroと申します。

tatさん、憧れの零戦の機体ありがとうございます。
また、うえのマニュアルなしにはまともに飛べなかったと思います。

ところで、Var.2.0.0に標準でついていますA6M2(JSBSim)版の機体、うまく機能しません。フルスロットルにしてもエンジン出力が上がらず、機体もグルグル回ってタキシングも満足にできません。戦闘機のタキシング、離陸は難しいことがどこかに書いてあったので、自分の腕が未熟なのかなあと思ったのですが。

その後、A6M2とだけ書いてあるモデルを試したところエンジン出力も上がり、無事タキシング、離陸できました。はじめて戦闘機に乗りましたが、セスナとはまったく違うシャープな反応に驚いています。

このJSBSimモデル、どこかにバグがあるのでしょうか、それとも何か事前に設定しなくてはいけないのでしょうか。
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-5-9 21:38
sambar  長老 居住地: 岡山  投稿数: 484
こんばんは、sambarです。

引用:

yuichiroさんは書きました:
ところで、Var.2.0.0に標準でついていますA6M2(JSBSim)版の機体、うまく機能しません。フルスロットルにしてもエンジン出力が上がらず、機体もグルグル回ってタキシングも満足にできません。戦闘機のタキシング、離陸は難しいことがどこかに書いてあったので、自分の腕が未熟なのかなあと思ったのですが。

このJSBSimモデル、どこかにバグがあるのでしょうか、それとも何か事前に設定しなくてはいけないのでしょうか。

バグというよりも、「FlightGear(のフライトモデルの一つ、JSBSim)」のアップデートに対応できてないっぽいです。

試しに、T-4 製作記 - Step3: フライトモデルの作成 (1) でtatさんが紹介されているaeromaticというツールを使用してエンジンとプロペラのデータを作り直した所、最新の曲技飛行機(ZivkoEdgeとか)もビックリするような化け物が出来上がりました

#といっても、弄ったのはエンジンとプロペラだけなので、ロールレート等に変化はありません。
投票数:4 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-5-9 23:08
zero1962  長老 居住地: 三重県  投稿数: 229
こんばんわ。お邪魔します。
私は、素人考えで以下の様に設定を変更して使っています。
機体特性の定義されているA6M2-jsbsim.xmlの104行あたりの
右脚の転がり抵抗を左脚の0.02に対して低く設定してみました。
<rolling_friction> 0.005</rolling_friction>

これでもまだ少し右にきれていくのですが、ラダー操作でカバーできる範囲におさまりました。
また、60km/hをなかなか越えられず離陸できないのでエンジンパワーを1800hpにあげています。
Sakae-Type12.xmlの
<maxhp> 1800.00 </maxhp>
これは、邪道な方法かもしれませんがなんとかとべますよ。

専門家に今後正しい設定をご教示ねがいます。
投票数:1 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-5-13 8:12
yuichiro  居住地: ブラジル国サンパウロ州  投稿数: 4
sambarさん、zero1962さん、ありがとうございます。

私だけでなく、皆さんにも同じ症状が出ているとわかって安心?しました。

当面、JSBSimでないモデルで飛びます。
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-14 3:10 | 最終変更
toshi  長老   投稿数: 1526
みなさんこんばんは。toshiです。

確かに、FlightGear v2.0.0のA6M2-jsbsimは、エンジンのかかりが悪い上にうまく離陸できませんね。
エンジンの回転数が低く、推力が足りないようです。

引用:

sambarさんは書きました:
バグというよりも、「FlightGear(のフライトモデルの一つ、JSBSim)」のアップデートに対応できてないっぽいです。

試しに、T-4 製作記 - Step3: フライトモデルの作成 (1) でtatさんが紹介されているaeromaticというツールを使用してエンジンとプロペラのデータを作り直した所、最新の曲技飛行機(ZivkoEdgeとか)もビックリするような化け物が出来上がりました

#といっても、弄ったのはエンジンとプロペラだけなので、ロールレート等に変化はありません。

なるほど。
Aircraft/A6M2/Engines にある Sakae-Type12.xml がエンジン、CS-40B.xml がプロペラのJSBSim用設定ファイルなのですね。
ある程度元の性能に戻せそうかを考えてみたいのですが、JSBSimのどのようなアップデートが影響しているのか、お教えいただけませんでしょうか?

FlightGear v2.0.0 の src/FDM/JSBSim 以下のファイル
http://gitorious.org/fg/flightgear/trees/v2.0.0/src/FDM/JSBSim
や、その元となっている JSBSim 自体のソースコードの変更履歴
http://jsbsim.git.sourceforge.net/git/gitweb.cgi?p=jsbsim/jsbsim;a=shortlog
を眺めてみたりしたのですが、v1.9.1からv2.0.0のリリース間での変更点がたくさんありすぎて、まるで特定できませんでした。

引用:

zero1962さんは書きました:
また、60km/hをなかなか越えられず離陸できないのでエンジンパワーを1800hpにあげています。
Sakae-Type12.xmlの
<maxhp> 1800.00 </maxhp>
これは、邪道な方法かもしれませんがなんとかとべますよ。

専門家に今後正しい設定をご教示ねがいます。

確かに、ある程度飛べるようにするための最小限の修正方法としては「あり」ですね。
「専門家」はこのフォーラムにいないと思いますが、、パイロットの手記を参考にしながら機体の特性出しが出来る方はTatさんしかいないのではないでしょうか。

以下は、正常に離陸できるFlightGear v1.9.1と、うまく離陸できないv2.0.0を比較した自分用のメモです。
RJTTで起動し、パーキングブレーキをかけたままスロットル最小とスロットル最大にした時のエンジンとプロペラの主な状態を記載しています。
A6M2-jsbsimの機体データは、それぞれのバージョンで初期インストールされているものを使いました。

v1.9.1 / v2.0.0 の順

★スロットル最小時
--- 内部プロパティ ---
/engines/boost-gage-mmhg: -318 / -350
/engines/engine/rpm: 987 / 365
--- 画面左下のモニタ ---
Thrust (lb): 238 / 33
MP-OSI: 17.0 / 15.7
Prop RPM: 688 / 255
FF (gph): -0.0 / 0.0
Prop Pitch: 25.0 / 25.0
---

★スロットル最大時
--- 内部プロパティ ---
/engines/boost-gage-mmhg: 10.9 / 9.3
/engines/engine/rpm: 2262 / 1271
--- 画面左下のモニタ ---
Thrust (lb): 1252 / 395
MP-OSI: 30.0 / 29.9
Prop RPM: 1577 / 886
FF (gph): 0.0 / 0.0
Prop Pitch: 25.0 / 25.0
投票数:6 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2011-5-15 22:02 | 最終変更
toshi  長老   投稿数: 1526
こんばんは、toshiです。

FlightGear開発版 (FlightGear/Git) を使用して A6M2-jsbsim を動かしてみたところ、アイドリング時のエンジン回転数が v2.0.0よりもさらに低くなっていることが分かりました。
使用した機体ファイルは 2011-05-14 にgitでダウンロードしたものですが、v2.0.0(2010年2月リリース)付属の機体ファイルとの違いは2011-02-07付けのサウンドに関する修正だけのはずですので、機体ファイル側ではなくFlightGear本体側の変更に伴う影響だと思います。

v2.0.0以降のFlightGear本体側の変更点としては、JSBSimのプロペラモデルでトルクをギア比分だけ過剰に見積もっていた誤りを修正したことなどがあるようですが(*1)、他にもたくさんの修正があってどれが効いているかは私には良く分かりません。
*1) JSBSimのhistoryより: 2010-03-30 Fix to the propeller model involving gear ratios

以下にgit版のメモを追記しておきます。

v1.9.1 / v2.0.0 / git版 (2011-05-14) の順

★スロットル最小時
--- 内部プロパティ ---
/engines/engine/boost-gage-mmhg: -318 / -350 / -406
/engines/engine/rpm: 987 / 365 / 168
--- 画面左下のモニタ ---
Thrust (lb): 238 / 33 / 0
MP-OSI: 17.0 / 15.7 / 13.5
Prop RPM: 688 / 255 / 117
FF (gph): -0.0 / 0.0 / 1.3
Prop Pitch: 25.0 / 25.0 / 25.0
---

★スロットル最大時
--- 内部プロパティ ---
/engines/engine/boost-gage-mmhg: 10.9 / 9.3 / 11.7
/engines/engine/rpm: 2262 / 1271 / 1313
--- 画面左下のモニタ ---
Thrust (lb): 1252 / 395 / 416
MP-OSI: 30.0 / 29.9 / 30.0
Prop RPM: 1577 / 886 / 916
FF (gph): 0.0 / 0.0 / 0.2
Prop Pitch: 25.0 / 25.0 / 25.0

※FF (ghp) は fuel flow (gallons per hour) だと思いますが、ずいぶん小さい値になっています。原因は良く分かりません。
投票数:7 平均点:5.71
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-16 0:24
sambar  長老 居住地: 岡山  投稿数: 484
こんばんは、sambarです。

引用:
FlightGear v2.0.0 の src/FDM/JSBSim 以下のファイル
http://gitorious.org/fg/flightgear/trees/v2.0.0/src/FDM/JSBSim
や、その元となっている JSBSim 自体のソースコードの変更履歴
http://jsbsim.git.sourceforge.net/git/gitweb.cgi?p=jsbsim/jsbsim;a=shortlog
を眺めてみたりしたのですが、v1.9.1からv2.0.0のリリース間での変更点がたくさんありすぎて、まるで特定できませんでした。

私の先述の「JSBSimの更新に〜」は過去に起こった同様の現象からの推測で、どの変更点が効いているのか特定できていません。
#2009年頃に、CVS版のfgfsで本家の機体ダウンロードページからダウンロードしたSu-26Mを使用した時に同様の症状が出ていて、本家フォーラムで機体(エンジン)データの修正方法がでてました。
#http://www.flightgear.org/forums/viewtopic.php?f=4&t=14&start=30  です。

私はAeromaticがJSBSimに合わせて更新された後、aeromaticで生成したデータに置き換えましたが・・・

#というか、FGPiston.*とFGEngine.*だけでも相当更新されてますし…
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-17 1:52 | 最終変更
toshi  長老   投稿数: 1526
こんばんは、toshiです。

英語フォーラムのスレッドをご紹介いただきましてありがとうございました。

つい最近の「2011年4月24付けのflightgear-develの投稿」に、「maxmpをわざと大きな値にしてブーストを模擬する方法はもう使えなくなったので、supercharger の定義を追加する必要がある」という内容の記述があるのですが、sambarさんに紹介していただいた英語フォーラムのスレッドの中の「2009年3月16日付けの投稿」でも「1.9.x/CVS のエンジンコードの変更により maxmp を大きくしすぎるとおかしな挙動を示すようになったので、maxmp を 29.92 にしてsuperchargerセクションを追加する必要がある」という似たような記述が既にあったんですね。

A6M2-jsbsim のエンジン設定ファイル Sakae-Type12.xml では
<maxmp unit="INHG"> 61.00 </maxmp>
と大きな値になっていますので、このへんの JSBSim の修正が FlightGear v1.9.1 と v2.0.0 のA6M2-jsbsim の挙動の違いに大きく影響している可能性は高いですね。

また、現在の Sakae-Type12.xml ではsuperchargerのセクションはコメントアウトされていて無効になっているので、maxmp と合わせて見直す必要がありそうです。

加えて、栄12型の諸元のうち、ボア<bore>、ストローク<stroke>、気筒数<cylinders>、圧縮比<compression-ratio>など、明確に値が分かっているものの Sakae-Type12.xml の中では定義されていないパラメータがいくつかあるようです。

先のflightgear-develの投稿にある解説や、p51dのJSBSim用エンジン設定ファイル Packard-V-1650-7.xml なども参考にしながら少し遊んでみようと思います。

ありがとうございました。
投票数:3 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-20 2:28
Tat  長老   投稿数: 375
お久しぶりです。

なかなか時間が取れず、JSBSim 版は放置していました。
A6M2/Engines/Sakae-Type12.xml をちょっと弄ってみましたのでお試しください。
# 以下をファイルに書いて保存してください。

<piston_engine name="Sakae-Type12">
<minmp unit="INHG"> 3.000 </minmp>
<maxmp unit="INHG"> 29.592 </maxmp>
<displacement unit="IN3"> 1703.000 </displacement>
<maxhp> 740.00 </maxhp>
<cycles> 2.0 </cycles>
<idlerpm> 300.0 </idlerpm> <!-- should be 750 or so -->
<maxrpm> 2550.0 </maxrpm>
<maxthrottle> 1.0 </maxthrottle>
<minthrottle> 0.05 </minthrottle>
<bore unit="M"> 0.13</bore>
<stroke unit="M"> 0.15</stroke>
<compression-ratio> 7.2 </compression-ratio>
<cylinders> 14 </cylinders>
<cylinder-head-mass unit="KG"> 50 </cylinder-head-mass>
<sparkfaildrop> 0.1 </sparkfaildrop>

<!-- supercharger setting -->
<numboostspeeds> 1 </numboostspeeds>
<boostoverride> 0 </boostoverride>
<ratedboost1> 35.43 </ratedboost1> <!-- +150mmHg = 1.2 bar -->
<ratedpower1> 950 </ratedpower1>
<ratedrpm1> 2500 </ratedrpm1>
<ratedaltitude1> 13800 </ratedaltitude1>
<takeoffboost>39.373</takeoffboost> <!-- +250mmHg = 1.333 bar -->

<!-- increasing volumetric efficiency increases fuel-flow and HP produced, default = 0.8 -->
<volumetric-efficiency> 0.8 </volumetric-efficiency>
<!-- increasing bsfc decreases HP produced -->
<bsfc unit="LBS/HP*HR"> 1.038 </bsfc>

</piston_engine>

まだ調整が甘いので、エンジン始動時にスロットルを 0.6 程開けておく必要があります。
一応 高度 4200m で 950HP、280kt 付近になるように調整してありますが、
ペラとのマッチングがいまいちなので 950HP 発生時にペラが回りすぎます。
離陸時は 100% スロットルで離礁パワー(940HP)になります。

上昇時及び通常飛行時は 98% 以内のスロットルで利用してください。
スピードは大体スペック近くの値が出ているような気がします。

そのうち時間があれば微調整してみます。
投票数:5 平均点:4.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-20 4:14 | 最終変更
toshi  長老   投稿数: 1526
Tatさん、こんばんは。
toshiです。
ご無沙汰しております。

しばらく書き込みを見かけていませんでしたので、お出まし頂けて嬉しいです

数々あるタグのうち、1つだけ質問させていただきます。

引用:

<cycles> 2.0 </cycles>

他のレシプロ機のエンジンでは
<cycles> 4 </cycles>
としているようなので、4ストロークエンジンなら「4」とするのが正しいのかなと適当な解釈をしていたのですが、そうではないのでしょうか?

ASz-62IRM18:
http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg32187.html
V-1650-7:
http://gitorious.org/fg/fgdata/blobs/master/Aircraft/p51d/Engines/Packard-V-1650-7.xml

以下のWikipediaの説明は理解できるのですが、FGPiston.hの<cycles>のコメントの意味が理解できませんでした。
また、FGPiston.cpp のソースを見ても、元の数式がそもそも分からないので判断が出来ませんでした。

◎4ストローク機関
Wikipediaの和英の説明
- 4ストローク機関
- Four-stroke engine
を合体させると...

ストローク(行程, stroke)とはピストンの往復運動の片道のことである。1サイクルは内燃機関の全動作段階の1周期のことである。4ストローク機関は1行程を1ステージに対応させる容積型内燃機関であり、4行程(four stroke)で1サイクル(one thermodynamic cycle = two mechanical cycles)を構成する(すなわちクランク軸の2回転(two revolutions)で1 サイクルを構成する)内燃機関である。

行程:
1. 吸収行程 INTAKE stroke
2. 圧縮行程 COMPRESSION stroke
3. 爆発行程 POWER stroke
4. 排気行程 EXHAUST stroke


◎ FGPiston.h
出典: http://gitorious.org/fg/flightgear/blobs/next/src/FDM/JSBSim/models/propulsion/FGPiston.h

double Cycles;                   // cycles/power stroke
私の翻訳能力では、コメント部分は
1爆発行程(one power stroke)あたりのcycle数
と読めてしまうのですが、、意味がさっぱり分かりません。
単に、
1ストロークあたりのcycle数
と考えたとしても、ここで言うcycleは mechanical cycle あるいは thermodynamic cycle のことだとすると、<cycles>はそれぞれ0.5あるいは0.25が正解になってしまいますので、この理解は間違っていることになってしまいます。
※four stroke = two mechanical cycles = one thermodynamic cycle

◎ FGPiston.cpp
出典: http://gitorious.org/fg/flightgear/blobs/next/src/FDM/JSBSim/models/propulsion/FGPiston.cpp
82 Cycles = 4; //デフォルトは「4」
261 double hp_loss = ((pmep + fmep) * displacement_SI * MaxRPM)/(Cycles*22371); // 数式の意味が分からない...
731 double pumping_hp = ((PMEP + FMEP) * displacement_SI * RPM)/(Cycles*22371); // やはり数式の意味が分からない...
投票数:5 平均点:4.00

なし Re: 零式戦闘機(A6M2)の開発

msg# 1.5.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-5-20 21:06
Tat  長老   投稿数: 375
引用:

他のレシプロ機のエンジンでは
<cycles> 4 </cycles>
としているようなので、4ストロークエンジンなら「4」とするのが正しいのかなと適当な解釈をしていたのですが、そうではないのでしょうか?

そうです。単に私の書き間違いです。
<cycles> 4 </cycles>
に修正して下さい。

ちなみに、4ストロークと 4サイクルは同じ意味です。
4ストローク1サイクルエンジンの略称として どちらも使われています。
Cycles のデフォルト値は 4 ですので、ストロークと解釈してよいですね。
ソースのコメントは cycles <or> power strokes ということかもしれませんね。
投票数:4 平均点:7.50

なし Re: 零式戦闘機(A6M2)の開発

msg# 1.5.1.1.1.1.1.1.1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-5-23 0:04
toshi  長老   投稿数: 1526
Tatさん

toshiです。

了解しました。ご回答ありがとうございました。
投票数:2 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-6-8 22:55
Tat  長老   投稿数: 375
引用:

toshiさんは書きました:

※FF (ghp) は fuel flow (gallons per hour) だと思いますが、ずいぶん小さい値になっています。原因は良く分かりません。

すっかりこの疑問にお答えするのを忘れていました。
A6M2-jsbsim 利用時に 2D Panel として表示されるパネル上の FF の所の値はFuel Flow ではなく、Advance Ratio (プロペラの進行率)です。この値は JSBSim のエンジンとプロペラ設定ファイルのマッチングを見る時に必要なので、試験的に FF の所に出していました。
紛らわしくてごめんなさい。
投票数:1 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-6-12 15:58
jentron  新メンバー   投稿数: 1
申し訳ありませんが、スレッドを中断する。私はJSBSimエンジンのコードを維持します。私はA6M2のバージョンを開発している。あなたはhttp://gitorious.org/ron-s-hanger/a6m2でそれを入手することができます。

この作品は、不完全です。ていない全てが正しく動作する。しかし、私は、現在の状態で飛んで楽しい時間を過ごしたがあります。
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-6-12 22:02
Tat  長老   投稿数: 375
この投稿は JSBSim のエンジン部分を主に開発している ロン=ジェンセン氏 (jentron) からの投稿です。

ちょっと機械翻訳でおかしな文章になっていますので補足しておきます。
(中断するという表現は「割り込みます」という意味だと思います。)
現在、彼と一緒に JSBSim 版の零戦を作り直しています。私が持つ資料から零戦のエンジン性能やプロペラ特性の図表を共有して、プロペラやエンジン出力を実機に近づけようとしています。また、ちょっと古くなって来た JSBSim の フライトモデルも新しくしてくれています。

彼の投稿にあるリンクは、最近の 開発版 FlightGear で動作する A6M2 のスナップショットです。まだ開発途中ですが飛行可能な状態です。これから徐々に良くなって行く事だと思います。主脚の引き込みも実機と同じように再現したいということですので、そのうち Yasim よりも実機に近くなるでしょう。
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-6-15 12:00
Tat  長老   投稿数: 375
jentron がJSBSim 版の零戦を刷新してくれました。
嬉しい事に Yasim 版と同様に、メインギアが片脚ずつ収納するようになりました。

また、空力特性も実機のモデルに基づいて Digital Datcom というツールで計算してくれていますので、比較的実機に近い挙動を示すようになって来ています。

彼の成果は先に示してくれたリンクから取得する事ができますが、まだプロペラとエンジン特性の改善は始まったばかりでして、実機には追いついていません。そこで、少し私がエンジンとプロペラの特性を変更してみました。燃費や、回転数と吸入圧力のマッチングなどの細かい点は違いますが、割と実機に近い値は出せて来ているかなと思います。
(git 版のみで利用可能です。2.0 ではエラーで終了してしまいます)

もっともこのエンジン/プロペラ特性は javaprop で主な状態(離陸、上昇、最高速、巡航)でのパワーと水力を概算し、手作業でプロットしたものなので、まだまだ改善の余地はあります。

とりあえず、現時点での機体をtar.gz ファイルで公開しますので、以下のリンクから取得し、お試しください。
http://macflightgear.sourceforge.net/wp-content/uploads/aircraft/A6M2-20110614.tar.gz

この機体も v2.0 では動作しません。最近の開発版 (git 版) をご利用ください。Mac 版は
http://sourceforge.net/projects/macflightgear/files/FlightGear-devel/git-20110602/FlightGear-git-20110602.dmg/download
から取得できます。 Windows 版は、皆さんの方がよくご存知でしょう。(^^;)

では、ご感想をお待ちしています。
投票数:2 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-6-18 14:49 | 最終変更
Tat  長老   投稿数: 375
JSBSim 版の零戦 (開発版 FlightGear & V2.0 用) を更新しました。
以下から取得してください。

http://macflightgear.sourceforge.net/wp-content/uploads/aircraft/A6M2-20110618-v2.tar.gz

今回の変更点は以下の通りです。

- 体積効率(Volumetric Efficiency)の動的変更により、
エンジン特性がより実機に近づいた
- 推力係数、パワー係数を理論値から作り直すことで、
現実的なプロペラ特性になった。
- Ctrl-M によるミクスチャー調整の自動/手動切替

これにより、離昇、上昇、最高速、巡航の状態に於ける
吸入圧力、回転数、速度の関係が文献と近い状態になっています。
最高速も git 版では 4500m 当りで 288kt (TAS) に近い値が出ています。
低回転に於ける燃費がまだ悪いですが、これも徐々に改善して行く予定です。

なお、スロットル 98% 以上は離昇用の設定(=military / war power)で、
+250mmHg までブースト圧が上昇します。実機上では離陸時か緊急時にのみの
5分間の利用に制限されていたそうです。

注) 2011/06/18: V2.0 に対応可能にしましたので、リンクを編集しました。
是非お試しください。
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-6-18 20:33
Tat  長老   投稿数: 375
言い忘れましたが、プロペラ特性に興味がある方は

A6M2/Engines/PropellerA6M2.xlsx

を参照ください。このファイルは零戦のプロペラ特性を計算する際に利用したもので、推力係数/パワー係数/プロペラ効率のテーブルとグラフがあります。
投票数:2 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-7-8 21:43
Tat  長老   投稿数: 375
少しプロペラ特性を弄ってみました。
6月中旬の JSBSim の修正後でもスペックに近い出力特性になるはずです。

また、Ctrl-o で座席位置を上下させられるようにしています。
これは実機の座席位置調整を模倣したもので、
着陸時の視界が若干良くなります。
実際、空母 を recover course に設定後、 Ctrl-o で座席位置を
上にしてから着艦してみましたが、常に甲板が見えるので楽に
アプローチできるようになりました。

最新版は以下から取得してください.

http://macflightgear.sourceforge.net/wp-content/uploads/aircraft/A6M2-20110707.tar.gz
投票数:1 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2012-1-30 0:26 | 最終変更
toshi  長老   投稿数: 1526
Tatさん、こんばんは。
toshiです。

FlightGear v2.6.0-rc1 for winに付属しているA6M2(JSBSim)をテストしてみたのですが、RJTTの滑走路上でパーキングブレーキをかけたままスロットル100%にすると、機体が前につんのめってしまいます。
ブーストのゲージが+250mmhgになるのは正常なのですが、推力が強すぎませんでしょうか?
例によってJSBSimのプログラムコードの修正が影響している可能性もありますが、ご確認いただけますと幸いです。

以下、私のテスト結果です。

テスト方法: RJTTの滑走路上で静止した状態でスロットル最小時とスロットル最大時の3つの内部プロパティ値を記録

★A6M2 (YASim)
スロットル最小時/最大時(ブースト+2段)
/engines/engine/boost-gage-mmhg: -692.0/240.1
/engines/engine/rpm: 666.26/2500
/engines/engine/thrust_lbs: 81.36/1145

★A6M2-jsbsim (JSBSim)
スロットル最小時/最大時
/engines/engine/boost-gage-mmhg: -451.6/250.2
/engines/engine/rpm: 535.3/2586
/engines/engine/thrust_lbs: 98.37/2264
--> スロットル最大時の推力がYASim機の約2倍!

なお、JSBSim機で起動すると、以下のコンソールメッセージが表示されます。
C_POWERとC_MAPが「Unknown table type」となっているのが気になります。
Warning: The property propulsion/engine[0]/propeller-rpm is initially undefined.

Warning: The property propulsion/engine[0]/map-inhg is initially undefined.
Unknown table type: C_POWER in piston engine definition.
Unknown table type: C_MAP in piston engine definition.
      Property /controls/gear/tailhook is already defined.
osgDB ac3d reader: detected line with less than 2 vertices!
loading scenario 'nimitz_demo'
PNG lib warning : Malformed iTXt chunk
creating 3D noise texture... DONE
weather util initialized ...
Electrical  ---Check
Use of <global> in material animation is no longer supported
(中略 -- 上のメッセージが52行表示される)

なお、FlightGearソースコードにおけるJSBSim部分の変更履歴を少し追いかけてみようと思ったのですが、結構多くて見切れませんでした。
http://mapserver.flightgear.org/git/gitweb.pl?p=flightgear;a=history;f=src/FDM/JSBSim;hb=HEAD
投票数:5 平均点:6.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2012-2-2 3:14
Tat  長老   投稿数: 375
toshi さん

まずは挙動について説明しますと、ブレーキをかけたままでフルスロットルにすると前につんのめるのが実機に近い挙動だと思います。この挙動は 2.4.0 の時から同じです。A6M2 のモデルは 2.4.0 から変更していません。JSBSim 側の変更もあるでしょうが、この点においては違いがないと思います。

アスペクト社の「零戦の操縦」という本によると、当時の操縦士はエンジン始動時や地上で回転数を上げる時に操縦桿を後ろに引き、エレベータを上昇の位置にしていたようです。これはプロペラ後流等が機尾を持ち上げる力などで前につんのめるのを防ぐためです。フライトギアでもこの操作は有効でして、操縦桿を後ろに引いておくとフルスロットルでも前につんのめらなくなります。

もっとも、零戦が地上にいる時は、離陸発進時を除き 2000rpm より高回転にはしないようにすべきです。そうしないと空冷エンジンの栄12型はオーバーヒートしてしまうからです (フライトギアの機体ではそこまではシミュレートできていませんので、オーバーヒートする心配はありませんが、実機ではそういう制約があったようです) 。
例外的に、空母からの発進時はブレーキを踏んだままフルスロットルにします。フライトギアでは空母を風上に向けた後、つんのめらない程度に操縦桿を倒してからフルスロットルにし、フラップを一段下げてください。エンンが2550rpm付近で安定したら、ブレーキを離して離陸してください。

次に推力についてですが、栄12型の離昇時の出力は940HP ですので、2000 lbf 以上の静止推力が得られてもおかしくはない気がします (情報が少ないので正確な値の検証は難しいのですが)。なので、Yasim の方が少なすぎるということになります。
Yasim ではあまり細かいエンジンチューニングができないので、JSBSim モデルの開発を始めたくらいですので、Yasim のエンジン特性は信じない方が良いでしょう。Yasim モデルを作成する時は最高速と失速速度等は調整しやすいのですが、静止時の推力等はチューニングが非常に困難です。

最後に警告についてですが、無視して構いません。Engines/Sakae-Type12.xml の C_MAP 及び C_POWER のテーブルは実験用でして、通常のJSBSim では使われません。そのうち消すつもりです。
投票数:6 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2012-2-3 0:47 | 最終変更
toshi  長老   投稿数: 1526
Tatさん、toshiです。

解説ありがとうございました。
なるほど、単に私の離陸の操縦方法がそもそもまずかったのですね。
失礼いたしました。

私と同じようにパーキングブレーキをかけたままスロットルを全開にして前につんのめってしまう人は他にもいそうな気がしますので、、Help > Aircraft Help で表示されるヘルプに、滑走路からの離陸手順についてのポイントを簡単に書いていただけると嬉しいのですが、いかがでしょうか。
文章のイメージとしてはこんな感じです。

Aircraft\SenecaII\SenecaII-base.xml より引用:
<help>
<title>PA34-200T Seneca II</title>
<line>Quick startup:</line>
<line> - set magnetos to on by hitting '}' trice</line>
<line> - open throttles approx. 25 percent</line>
<line> - hit 's' for 5 seconds to start the engines</line>
<line> - hit 'B' to release brakes</line>
<line> - open throttles to 40 inches of manifold pressure</line>
<line> - rotate at 70 knots, climb at 100 knots</line>
<line/>
<line>You can also use the tutorials under Help-&gt;Start Tutorial</line>
<line/>
<line>For the online documentation go to</line>
<line>http://wiki.flightgear.org/Seneca</line>
<line/>
</help>

それから別件でもう1点、ご確認をお願いしたいことがあります。
A6M2-jsbsimで起動すると、画面上部に以下のメッセージが表示されますよね。
Performance Monitor is available.
Press Ctrl-Shift-M to activate.

そこで、Ctrl-Shift-Mを押すと、画面にパフォーマンスモニタが表示されますが、
同時にコンソール画面に以下のメッセージが出ます。
飛行中にCtrl-Shift-Mを押すといくつかの数値が一時的に更新されますが、いくつかの数値は0のままのようです。
動作環境は、FlightGear2.6.0-RC2 for Winです。
Nasal runtime error: nil used in numeric context
  at C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/performance.nas, line
110
  called from: C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/performance.
nas, line 92
  called from: C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/performance.
nas, line 456
  called from: C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/performance.
nas, line 480
  called from: C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/performance.
nas, line 495
  called from: C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/keyhandler.n
as, line 69
  called from: C:/Program Files/FlightGear/data/Aircraft/A6M2/Nasal/keyhandler.n
as, line 31
  called from: C:/Program Files/FlightGear/data/Nasal/globals.nas, line 100
投票数:6 平均点:3.33
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2012-2-4 5:12
Tat  長老   投稿数: 375
toshi さん

報告&バグレポーとありがとうございます。
Help は、前に書いたような記憶があるのですが、いつの間にか消えてしまっています。近々何か書いておきます。もっとも、ここに書いた事や取扱説明書に書いてあることをざっくりとまとめて、震電のようなマニュアルページを作成するべきでしょうね。これも時間をみて書くようにしてみます。

パフォーマンスモニターに関しては、engine のプロパティが若干変わったため、不整合が起きているようです。performance.nas を修正しましたので、そちらに置き換えてください。
http://macflightgear.sourceforge.net/wp-content/uploads/temp/performance.nas
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2012-2-7 0:42 | 最終変更
toshi  長老   投稿数: 1526
Tatさん、こんばんは。
toshiです。

performance.nasをダウンロードして試してみました。
ちょっと試した限りですが、正常に動作している様子です。
どうもありがとうございます。

それからまたひとつ、ご確認いただきたい点があります。

---
動作環境: FlightGear 2.6.0-RC2 for windows、Windows XP、日本語109日本語キーボード

A6M2のYASim機、JSBSim機のどちらとも、テンキーのEnterキーを押してもラダーが反応しません。
キーボードの真ん中の大きなEnterキーでは正常に操作できています。
また、テンキーの0キーも問題なく操作できます。

他の初期インストール済みの機体のうち、777-200ER、ASK13、b1900d、bo105、c172pと順に試したのですが、これらの機体は問題ないようです。

Windows共通の現象なのか、Windows機の日本語キーボード特有の問題なのか、切り分けが出来ていませんが、とにかくA6M2でのみ今のところ問題が起きています。
何か他の機体と異なるキー処理を実行していたりしますでしょうか?

なお、各キーを押すと、devices/status/keyboard/event/key の内部プロパティ値は以下に更新されます。
テンキーのEnter: 13
キーボード真ん中の大きなEnter: 10
投票数:5 平均点:4.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2012-2-7 14:24
Tat  長老   投稿数: 375
toshi さん

ENTER キーが効かない問題は A6M2 にあります。
AMC (オートミクスチャコントロール)の ON/OFF キーをCtrl-M に割り当てていたのですが、このキーは Enter キーと同じで keycode 13 になります。(ということをすっかり忘れていました :-p)
結果として、enter のキー割当てが上書きされるので、enter キーによるラダー操作ができなくなります。現在、A6M2 のコードは performance.nas 等を含め更新作業を進める予定ですので、うまくいけば、2.6.0 のリリースまでに修正されていると思います。(間に合わなければ別途公開します。)

余談ですが、これらのキーに関する FlightGear の実装はちょっと変わっていまして、Return キー(中央の大きな改行キー) がキーコード10を生成します。
本来は 13 を生成させるはずなのですが、なぜか10 (Line Feed)に割り当てられています。
Enter が何に割り当てられるかは機種依存なんですが、FlightGear では一律に 13 を割り当てているようですね。

更に、Mac OS X 向けの osgViewer の実装では、Ctrl-M が Return に変換されるので、結果として Ctrl-M は キーコード 10を生成します。これは明らかに間違いですので13に修正します。Windows や Linux でも Ctrl-M が キーコード10 を生成するようでしたらプラットフォーム比依存な修正が必要になります。
投票数:2 平均点:5.00

  条件検索へ


 検索

高度な検索
 新しい登録ユーザ
yvyti 2024-4-24
evolutioub 2024-4-24
tiktokiois 2024-4-24
ragnarevNr 2024-4-24
sangbt 2024-4-23
sportpulse 2024-4-23
hdfbdb 2024-4-23
ModApkTT 2024-4-23
slotvip90 2024-4-23
OptomO 2024-4-23
 最近の画像(画像付)
自作11機目 F/A-18... (2022-5-27)
自作11機目 F/A-18...
飛んでみる八尾空港 (2022-4-10)
飛んでみる八尾空港
作ってみる八尾空港 (2022-4-2)
作ってみる八尾空港
F117 nighthawk (2021-5-19)
F117 nighthawk
HiTouchさん宛の画像... (2020-11-8)
HiTouchさん宛の画像...
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Theme designed by OCEAN-NET