タグ検索

 

外部リンク

Top Page > Tips > [Unity]rigidbodyの落下位置を予測するには…

[Unity]rigidbodyの落下位置を予測するには…

2014-06-09

剛体の落下位置を物理学で予測する。

落下予測
 
powerの分だけ左にふっとばす感じのソースコードを用意。rigidbody2dでもrigidbodyでも良い。

rigidbody.AddForce(Vector3.left * powerForceMode.Impulse);
もしくは

rigidbody2D.AddForce(Vector2.right * -powerForceMode2D.Impulse);

次に、落下位置を予測する。

Vector3 GetPos(float timefloat powerfloat mass)
{
    float halfGravity = Physics.gravity.y * 0.5f;

    float x = time * -power / mass ;
    float y = halfGravity * Mathf.Pow(time2) ;
    return  new Vector3(xy0);
}

移動距離は速度×時間。速度は力÷質量で出す。
落下速度は、 y = 1/2 gt^2 だ。

後は現在の座標からこの数値を加算すると、あら不思議、
(当たり判定がない場合の)落下位置が予測できる。

要するに、数学頑張ればそれなりに位置を予測できそうだ。
関連記事

ーーー
この記事が気に入ったらシェアしてくれると嬉しいです

Tips コメント: 0 トラックバック: 0

次の記事 >






    



管理者にだけ公開させる

トラックバックURL
→ http://terasur.blog.fc2.com/tb.php/820-f5cec5fb

この記事にトラックバックする(FC2ブログユーザー)

| |

翻訳