- 締切済み
重力の計算
C言語等でゲームを作っているのですが、 「Aから、Bに 速さv 重力加速度 g の弾を打ち出した時に、 正確にBに当てるには、Bより どの程度上の地点を狙って 弾を打ち出せばいいか」 というプログラムを作りたいのですが、正確では無いものか、 処理が重すぎるものしかできなかったので、 どうすれば最適なものができるのでしょうか?、
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.3
「明らか」じゃなかった. 解けちゃった. tan θ に関する 2次方程式ですな.
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.2
A と B の座標が分かっているなら, この 2点を通るような放物線が作れればいい. A は原点と仮定していいのでそうする. 仰角 θ で打ちだすとすると, 時刻 t における弾の位置は ((v cos θ)t, -(g/2)t^2 + (v sin θ)t) で表されるので, これが B と等しいとして t と θ に関する連立方程式を解けばいい... んだけど, 明らかにそのままでは解けないので θ に関する方程式を近似的に解くことになると思います. この辺は物理 (ニュートン力学) の世界ですね.
- asuncion
- ベストアンサー率33% (2127/6289)
回答No.1
>どうすれば最適なものができるのでしょうか? まずは、書かれたソースをさらけ出すことです。