ドリーのブースター、ドラッグシュート | virt_flyのブログ

virt_flyのブログ

フライトシミュレーターソフトのFlightGearで仮想飛行を楽しむブログです。

イメージ 1

 ミステルを再現する試みに少しでもリアルさを期すなら、子機やドリーの切り離しだけでは済ませず、ドリーにロケットブースターを取り付け、ドラッグシュートが開くようにしなければならないでしょう。

 ロケットブースターは、3Dモデリングソフトにて壷様のブースターを作成し、パーティクルシステムで思いっきりスモークを出させれば、参考にした記録映像にそっくりです。

 他方、記録映像にみるドラッグシュートは、それを開くことが離陸の契機かと思われるくらい、ほとんどドリーが地表から浮き上っていないうちに、しかも開くというより放り出されてほどけたような感じ。時たま危ないことにドリーがもんどりうって転がる様子を見ても、ドリーに積まれたパラシュート様のものは、離陸後切り離したドリーをソフトランディングさせる落下傘というより、切り離したドリーが機体にぶち当たらないよう急ぎ引き離すための、先ほどから言うようにドラッグシュートとみなして間違いなさそうです。そうなると参考にしたい、あるいは手に入れたい3Dモデルもやはりパラシュートでなくドラッグシュートないしはブレーキシュートということになります。

 ところが思い当たるロッキードSR-71のブレーキシュートは、全開状態のドラッグシュートが単に開い
たまま表示されるだけで、実際映像とはかなり違和感をおぼえます。結果的には、落下傘が広がる様子まで再現しているOV-10ブロンコの落下傘兵を参考に、強引にドラッグシュートを再現することにしました。

 問題になったのは、ドリーの3Dモデルとドラッグシュートの3Dモデルを一体化し1つのacファイルにした手抜きのため、垂直方向に移動する落下傘を水平方向にのびるドラッグシュートに書き換えることになり、そのせいかドラッグシュートの位置が開きはじめと後とでZ軸方向に若干下降する感じ、時にはよくみると開き始めのドラッグシュートが機体に接触してしまっている有様ですが、いたしかたない。

OV-10のダウンロード
 OV-10のファイルはFlightGearの米国のサイトあたりからダウンロードすればよいのですが、ここではすでに手元にあるCVS版を参考にしました。

ドラッグシュートの3Dモデル
 ドラッグシュートの3Dモデルは、$FG_ROOT/Models/Geometry下のparachuter.acより、パラシュートの部分だけを利用。水平に寝かせドリーの3Dモデルと一体にしたchariot2.acをあらたにもうけます。

chariot2.xml
 同じ$FG_ROOT/Models/Geometry下のparachute.xmlファイルを参考に、ドリーのchariot.xmlにEXTRACT部とINFRATE部(注記参照)を書き加え、chariot2.acに対応するchariot2.xmlファイルをあらたにもうけます。ドリー切り離し前のchariot.xml対するもの。
<?xml version="1.0" encoding="UTF-8"?>

<PropertyList>

  <path>chariot2.ac</path>

  <animation>
    <name>Trolley</name>
    <object-name>axeCA1</object-name>
    <object-name>axeCA2</object-name>
    <object-name>roueCA</object-name>
    <object-name>roueCG</object-name>
    <object-name>roueCD</object-name>
    <object-name>roueCG.001</object-name>  ←車輪の追加
    <object-name>roueCD.001</object-name>  ←車輪の追加
    <object-name>armature</object-name>
    <object-name>parachute</object-name>

  </animation>
  
  <animation>
    <type>material</type>
    <object-name>axeCA1</object-name>
    <object-name>axeCA2</object-name>
    <object-name>roueCA</object-name>
    <object-name>roueCG</object-name>
    <object-name>roueCD</object-name>
    <object-name>roueCG.001</object-name>
    <object-name>roueCD.001</object-name>
    <object-name>armature</object-name>
    <object-name>parachute</object-name>

    <property-base>sim/model/livery</property-base>
    <texture-prop>texture2</texture-prop>  ←親機と異なるドリー専用のテクスチュアを指定
    <texture>texture2.png</texture>
  </animation>

  <animation>
    <name>Trolley</name>
    <object-name>axeCA1</object-name>
    <object-name>axeCA2</object-name>
    <object-name>roueCA</object-name>
    <object-name>roueCG</object-name>
    <object-name>roueCD</object-name>
    <object-name>roueCG.001</object-name>
    <object-name>roueCD.001</object-name>
    <object-name>armature</object-name>
    <object-name>parachute</object-name>
  </animation>

  <!--<animation>  ←この部分はコメントアウトします。
    <type>select</type>
    <name>Trolley</name>
    <condition>
      <equals>
        <property>gear/gear/position-norm</property>
        <value>1</value>
      </equals>
    </condition>
  </animation>-->

    (略)

  <animation>
    <type>spin</type>  ←追加した車輪を回転させる記述。roueCD.001も同様に。
    <object-name>roueCG.001</object-name>
    <property>gear/gear[1]/rollspeed-ms</property>
    <factor> 30 </factor>
    <center>
      <x-m>  1.8 </x-m>
      <y-m> -1.458 </y-m>
      <!--<z-m> -2.180 </z-m>-->
      <z-m> -4.230 </z-m>
    </center>
    <axis>
      <x>  0.000 </x>
      <y> -1.000 </y>
      <z>  0.000 </z>
    </axis>
  </animation>

    (略)

  <model>
    <path>Aircraft/ME-262/Models/effects/rocket_smoke.xml</path>  ←ロケットブースターに煙を。
    <offsets>
      <x-m>  3.0 </x-m>
      <y-m>  0.0 </y-m>
      <z-m> -3.65 </z-m>
      <roll-deg>    0.000 </roll-deg>
      <pitch-deg>   0.000 </pitch-deg>
      <heading-deg> 0.000 </heading-deg>
    </offsets>
  </model>

<!-- doragchute -->  ←以下でドラッグシュートが開く様子を再現
<!-- EXTRACT -->
 <animation>
  <type>translate</type>
  <object-name>parachute</object-name>
  <property>sim/time/elapsed-sec</property>
  <offset>0</offset>
  <factor>3</factor>
  <max-m>5</max-m>
  <axis> 
    <!--<z>1</z>-->  ←垂直方向の落下傘を水平方向のドラッグシュートに書き換え
    <x>1</x>
  </axis>
 </animation>

<!-- INFLATE -->
 <animation>
  <type>scale</type>
  <object-name>parachute</object-name>
  <property>sim/time/elapsed-sec</property>
  <offset>0</offset>
  <!--<x-max>20</x-max>
  <y-max>20</y-max>
  <z-max>1</z-max>
  <x-factor>15</x-factor>
  <y-factor>15</y-factor>
  <z-factor>1</z-factor>-->
  <x-max>1.2</x-max>  ←垂直方向の落下傘を水平方向のドラッグシュートに書き換え
  <y-max>10</y-max>
  <z-max>10</z-max>
  <x-factor>1.2</x-factor>  ←垂直方向の落下傘を水平方向のドラッグシュートに書き換え
  <y-factor>10</y-factor>
  <z-factor>10</z-factor>
 </animation>

</PropertyList>

注記)ドリーのドラッグシュートは、あまり開かないように数値を小さくしました。
 
submodels.xml
 OV-10の落下傘兵のかわりがミステルのドリーに該当するので、そのままに。ただしドリーのxmlファイルのパス指定の部分は、chariot2.xmlに変えます。

ミステル起動用_mistel.xml
 ミステル起動用の_mistel.xmlは何ら変更しません。