Elfizmさん
ご回答ありがとうございます。私も、そのHPはみましたが、
残念ながら、理解しきれませんでした。
Elfizmさんのスクリプト拝見させて頂きましたが、
大変失礼ではありますが、
d_x = c_velocity * cos( c_role )
d_y = c_velocity * sin( c_pitch ) + ( Gravity * deltaTime )
d_z = c_velocity * sin( c_role )
のところがどうも正しくはないように思えます。
まず、速度成分にロール角の三角関数をかけても意味がありません。
(ロールは速度ベクトルを軸に回転するからです)
また、方位(heading)がどこにも出てきません。
加速度さえ考えなければ
d_x = c_velocity * cos( c_pitch ) * cos( c_heading )
d_y = c_velocity * cos( c_pitch ) * sin( c_heading )
d_z = c_velocity * sin( c_pitch )
これに加速度を考えます。
単純にするために、
1、抗力と推力は釣り合っている(つまり、速度ベクトル方向の加速度は0)
2、重力加速度はg(y軸方向で-g)
3、揚力は重力加速度のn倍(つまりng)
とすると時間dt秒後のd_x、d_y、d_zはどうなるのでしょうか?
ちなみに、揚力は速度ベクトルの法線方向にかかります。
しかし、c_roleだけ、垂直方向から回転しています。
つまりこのときの航空機の諸元は
速度:c_velocity、方位:c_heading、ピッチ:c_pitch、バンク:c_pitch のとき
n〔G〕で機動、となります。
GENKIさんは3次元ベクトルに詳しいようなので、もしよろしければご教授お願いいたします。
HSPのプログラムとは直接関係のない話になってしまい申し訳ございません。