• 締切済み

重力の計算

C言語等でゲームを作っているのですが、 「Aから、Bに 速さv 重力加速度 g の弾を打ち出した時に、 正確にBに当てるには、Bより どの程度上の地点を狙って 弾を打ち出せばいいか」 というプログラムを作りたいのですが、正確では無いものか、 処理が重すぎるものしかできなかったので、 どうすれば最適なものができるのでしょうか?、

みんなの回答

  • 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

>どうすれば最適なものができるのでしょうか? まずは、書かれたソースをさらけ出すことです。