
問題は格納時の車輪が一部露出のタイプであること
AI機を扱う際は、駐機時と飛行時とでのプロペラの回転の有無と合わせ、車輪の状態がどうなっているかについても注意が必要になります。
もちろん、駐機時は車輪が降りており、飛行時には車輪は格納されていなければなりません。
これに対応する方法として、3Dモデル設定xmlファイルをAI機用に書き換える方法を、ホームページの「仮想飛行」で紹介してきました。
今回、この方法では対応できないケースにぶつかったのです。
これまでは、AI機の一定の速度を基準に条件分岐のプログラムを記述し、車輪が出た状態を表示させるかまったく表示させないかで、車輪の出し入れを簡便に再現していました。
ところが、MC-20やDC-2など(確かHe-111も)、車輪格納時でも一部タイヤが露出した状態の機体があります。A-10も、事故を想定してわざと露出させてますよね。
明らかに、車輪の表示・非表示という単純な方式では対応できません。
条件分岐で対応できればいいのですが、どうもうまくいきません。駐機状態と飛行時の2つの3Dモデルをもうけるのが単純ですが、AI用の機体にメモリー喰いの3Dモデルを2つももうけるのは、関心できることではありません。できるだけxmlファイルの記述で済ませたいところ。
妥協して、機体の3Dモデルに閉じた状態の車輪の3Dモデルを追加し、表示・非表示を切り替えさせればメモリーの消費は抑えることができますが、既存の機体の3Dモデルをいじるのは抵抗があります。人が作成したものであればなおさら。とくに、本来の飛ぶ機体の3DモデルをそのままAI機と共用することの多い私にしては、あまりいじりたくない。
そこで考えたのが、追加ではなく、機体の3Dモデルとは別ファイルとして閉じた車輪だけの3Dモデルをもうけ、3Dモデル設定xmlファイル上でこれにパスを通し機体と結合させ、速度により表示、非表示とするものです。
折衷案ですが、悪くなさそうです。