HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0507
はじめHSPでフライトシミュレーター11解決


はじめ

リンク

2008/5/7(Wed) 00:08:46|NO.15705

フライトシミュレータを作りたいのですが、
どうも3次元の動きの計算がわかりません。
表示については、何とかできます。
どなたかサンプルなどあるサイトご存じではないでしょうか?



この記事に返信する


axobj

リンク

2008/5/7(Wed) 21:50:01|NO.15715

3Dの表示には何を使っているか、などの情報も書いてくださいね。



船丸

リンク

2008/5/7(Wed) 21:58:40|NO.15716

質問する位ならd3だと思いますけど。



はじめ

リンク

2008/5/7(Wed) 22:49:13|NO.15721

すみません、私の聞き方がわるかったです。
私が、知りたいのは、
航空機が、ある座標にいて、高度、速度、バンク、ピッチ、Gの諸元が
与えられたときの計算の方法(つまり3次元の動きの計算)です。

具体的例を挙げるとすれば、基準点から
北に1000ft、東に1000ft、高度は10000ft
速度は計器速度で400kt
30°バンク、20°ピッチで4Gがかかっているとき、
単位時間後の座標、バンク、ピッチはいくら?というのを計算したいのですが・・・

平面での動きなら、計算できるのですが・・・



ANTARES

リンク

2008/5/8(Thu) 21:33:54|NO.15731

>平面での動きなら、計算できるのですが・・・
 それなら、「速度 座標 回転」で検索できる記事(No.15429)は、参考になりませんか?
フライトシミュレータについては何も知りませんし、
記事自体は速度のみによって座標が決まることを前提にしていますが、
「平面の計算をどうやって三次元に拡張するか」のヒントにはなるかも……。
……やっぱりダメかな?



はじめ

リンク

2008/5/8(Thu) 22:59:46|NO.15738

ANTARESさん、ご回答ありがとうございます。
しかし、失礼な言い方になるかもしれませんが
No.15429程度の内容なら、自分で考えてもわかります。

要するに、ある速度、G、バンク、ピッチ、方位の時、
単位時間後のバンク、ピッチ、方位を求めたいのですが・・・



GENKI

リンク

2008/5/9(Fri) 01:51:02|NO.15743

ベクトル(3次元)について学習してみてください。
2次元(平面)での計算が理解出来ているのであればそう難しいことではないと思います。
速度ベクトルを出せば、座標も出せるようになります。…これは2次元でも同じことですが。



はじめ

リンク

2008/5/9(Fri) 23:16:37|NO.15756

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のプログラムとは直接関係のない話になってしまい申し訳ございません。



GENKI

リンク

2008/5/10(Sat) 01:45:14|NO.15757

> GENKIさんは3次元ベクトルに詳しいようなので、もしよろしければご教授お願いいたします。

さすがにここで高校数学の講義をやるわけにも行かない(というか自分では解けても人に教える技能は持ってない^ ^;)ので、サイトをひとつ紹介しておきます。
http://shigihara.hp.infoseek.co.jp/vx_index.htm



Elfizm

リンク

2008/5/10(Sat) 07:54:33|NO.15762

おっしゃるとおり、NO.15741のサンプルはおかしいみたいです。
それどころかasinがおかしかったり、degすら正しくない(笑)
方位、ピッチ、バンクも意味を取り違えていたようです。
ちょっと間違いが多すぎるのでNO.15741は削除しますね。

昔作ったものですが、
行列のモジュールと一緒にもう一個サンプルを置いて見ますので、
参考になりそうであれば見ていただければ幸いです。
長くなったのでファイルにまとめました。

http://www9.atwiki.jp/vvani/pub/matrix_hsp/



はじめ

リンク

2008/5/12(Mon) 22:37:11|NO.15791

GENKIさん、Elfizmさんありがとうございます。
とりあえず、ベクトル使ってもう少しがんばってみます。
近いうちに、HSPフライトシミュレーターエンジンでも
公開できればいいなぁと思ってます。



SYAM

リンク

2008/5/13(Tue) 08:50:28|NO.15792

ところで
機体座標や角度を変化させる数式がわからなかったのか、
機体の速度や角度が次の速度や角度にどう関係するかという一種の力学的なアルゴリズムがわからなかったのか
どちらだったのでしょう?



ONION software Copyright 1997-2021(c) All rights reserved.