Unity勇者の冒険の書

Unityで学んだことや便利なものなど作ったら紹介します

【Unity勇者の奮闘記】Unityで物理の勉強5(初速を加えた時に落下地点を予測する)

こんにちは。

前回は初速を加えた時に地面に落ちる時間を求めました。今回はそこにちょこっと変更をして、初速を加えた時に地面に落ちる位置を予測してみようと思います。

まず、前回もやりましたが、地面に落ちるまでの時間を初速と投げる位置から計算で出します。計算での出し方は前回の記事を参考にしてください。
【Unity勇者の奮闘記】Unityで物理の勉強4(初速を加えてから地面に落ちるまでの時間を計算する) - Unity勇者の冒険の書


地面に落ちる時間が分かったら次は座標を求めるのですが、求めるのが厄介なy座標に関しては既に決まっているので、あとはx,zを求めていきます。x,zは等速直線運動なので時間×速度で求める事が出来ます。

ソースコードはこんな感じです。

こんな感じになりました。
実際に予測した位置に落ちるのか、実験してみます。
いつものように、落ちる場所にダミーのボールを移動させています。
f:id:LightGive:20171028204104g:plain

うまく予測した位置に落ちていますね。
これを使えば、大砲が打たれた瞬間に、地面に危険マークを出したり、野球ゲームで誰かが打った時に落ちる位置に走りだしたりという演出が作れそうですね。

RigidBody任せなので完全に一致というわけにはいきませんが、うまく使ってゲーム作りに役立てて下さいね。

では。('_')