法線/垂直ベクトルの計算
スクリプティングツール

別ベクトル方向にある場合のベクトル速度の大きさ

車のスピードメータは一般的にはタイヤの回転速度を計ることで速度を表示します。車は前方向に動いているとは限りません(例えば、横滑りしている。など)、この場合の動作のベクトルはスピードメータが計れない方向にあります。オブジェクトの rigidbody.velocity ベクトルの大きさは全体的な動作におけるスピードを示しますが、前方方向のスピードを取得するためには、.Dot 関数の戻り値を使用します。

 var fwdSpeed = Vector3.Dot(rigidbody.velocity, transform.forward);

方向は好きなものでよいのですが、方向ベクトルはこの計算のために必ず正規化しておく必要があります。これによって、速度の大きさをより正確に反映するだけでなく、平方根の計算をせずに大きさを求めることができます。

法線/垂直ベクトルの計算
スクリプティングツール