トップページgamedev
981コメント311KB

ゲームのための物理(力学)

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。02/04/08 17:38ID:dlksSYkA
ゲームに必要な物理(力学)を語るスレッド。

例えば、坂道を転がる球の加速度だったら。

その球の密度が一様ならば、慣性モーメントは(2/5)MR^2なので

dV/dt = 5*g*sinθ/7;

と表せるよとか。

他にも剛体運動、力積とか語ってください。
0663名前は開発中のものです。04/07/13 15:31ID:8Vlr85G7
>>655
そういうのは、次数を上げると桁落ちが激しくてできる限り低次で計算をするようにしたほうがいい結果になるッス。
んて、低次の計算で精度を上昇するためには、係数に細工を入れてテーラー展開の値から少しずらす訳なんだけどこれのやり方が幾つかあって
一番簡単なのは、最少二乗法という物で多項式近似をしてみるといいです。
やり方は「統計学」「最少二乗法」「多項式」「曲線の当てはめ」辺りで検索して下さい
double 精度の{ sin(x) , x }の組をサンプルにして当てはめた関数を探って係数を求めるといいです。
必要精度は誤差の二乗和を参考にして次数は決定してやってやればいいかと思います。

他にもエルミート関数から攻める方法とかいろいろあります。
今一まとまってなくてすんまそ
0664名前は開発中のものです。04/07/13 17:11ID:Aoo+TQQn
>>655
>2、例えば、多項式 [ x^8 + ax^7 + bx^6 + cx^5 + dx^4 + ex^3 + fx^2 + gx + h = 0 ]
>があったとして、この根を求めたい場合
>こんな8次まで使わなくても、例えば4次ぐらいで止めていても
>解にそう差は出ないもんですか?

解xと係数の大きさによる。
解の桁を大まかに見積もれば各項の大きさが判るので、
大きい項だけで計算してもそれなりの近似は得られる。
精度を上げるには近似を初期値にして元の式を解く。
(計算誤差よりも小さい項は無視しても可)
0665名前は開発中のものです。04/07/13 20:49ID:Q2z7u57h
>>655
参考までになんだけれど、
随分昔にやったので、うっすらとしか記憶に残ってないんだけど、2の問題は sin とかの逆関数を求めたいってことなのかな?
もしそうだとすると、この種の級数には反転公式っていう

y=a+bx+cx^2+...

x=A+By+Cy^2+...

に反転する公式があったはず、公式集とか探してみたら何か出てくるかもよ。
■ このスレッドは過去ログ倉庫に格納されています