
AI用のooyodoを再びDLできるようにしました




AI船なら、多少ズルして手抜きな再現でも許されそうなので、そちらで挑戦してみることにしました。
もちろん、発射の瞬間のまばゆい炎、湧き上がる砲煙、薄れゆく煙など4つを基本にする6枚ほどのパラパラアニメでの再現です。
これなら、発射も自動化できますし、なによりも砲塔の向きを変更しても炎や煙が追随してくれるのがありがたいです(正確には砲口の上下には非対応)。そのためには、少々細工が必要ですが、船体と砲塔、砲身をそれぞれ別のacファイルにすることは、砲口の向きの左右、上下の変更を容易にします。もちろんAI船ですから自在に操作できるということではなくあくまでも固定的ですが、xmlファイルでの角度の値の変更で簡単に砲口の向きと炎・煙の位置が決定できます。
参考)
パラパラアニメにした艦砲・高角砲の炎や煙は、サイズは違いますが、それそれ同じ画像を使用しています。もともとが、パーティクルシステムを用いたooyodoの艦砲の画像から作成したものです。まばゆさのために白っぽいものを選んだせいもありますが、元画像と比べても白っぽくなり、模様もほとんど見えなくなっていました。見る位置でくすんだ色にみえるため、さらに白く塗ってみましたが、意味はなかったようです。
とりあえず、比較用にパーティクルシステムによる艦砲の炎の画像を下にかかげます。上の画像の炎と比べてみてください。少し黄色味がかったほうがリアルでした。


ちなみに砲塔の回転は、カタパルトでしたように<rotate>で、ただし<property>には/controls/flight/elevatorを借用して実現。砲身の上下は、3つ同時ですが、<property>に/controls/flight/flapsを使い、そのため3段階の切り替えになりましたが、キー操作で角度を変えることができます。
砲の発射については、自在に動く砲の向きに合わせ、任意の位置で行われてしかるべきなのですが、そこまでのスキルはないもので、右60°、高さ45°の固定位置でのみ発射の光と砲煙が出現されるにとどまります。
問題は、この光と煙の再現です。もちろんparticlesystemを使ったリアルな再現をめざします。
艦砲射撃の動画を見ると、砲身から前へと炎は伸びて行っているように見えます。
これを再現しようと思えば、ひとつは砲弾を発射するように砲から炎と煙を前へ打ち出すか、ロケット弾のように発射した砲弾に炎や煙をひかせるか、そのどちらかになろうかと思われます。
しかし、打ち出す方式では、最初にできて大きく広がった炎がただ前に押し出されてくることになり、しかも船体が前に進むに連れて炎の先端は取り残されてしまい、どんどんずれていくことになってしまいます。
それと比べれば、弾に炎をひかせるほうが、炎の先端に新たな炎が次々生まれてくる感じになり、現実にも合っているような気がします。
ただし、ロケット弾では発射の初速度が速いほど、発射を実行した後、パイロンの下に吊り下げられてあったロケットが、一旦消えてから次に姿を現すまでしばらく時間がかかり、しかも現れるのはかなり離れたところとなっていました。パソコンの能力にかかわるところもありますが、この方式だと、大砲を撃った後しばらくしてから離れたところに炎と砲煙が発生することになりかねません。初速度を遅くしても、砲弾がゆっくり飛んでいくということになったのではおかしなことになります。
第3の道が見つけられない現状では、前者を採用し、<life>を短くしてボロを目立たなくするしか、しかたがありません。
追記)
艦砲射撃の炎には、FlightGear用の機体ではミサイルがヒットしたときに放つまばゆい光が印象的なF-14Bのexplosionを真似させてもらいました。