Version: 2019.2
Вычисление нормали/перпендикуляра
Scripting Tools

Величина одного вектора, лежащая в направлении другого вектора

Автомобильный спидометр обычно работает путем измерения скорости вращения колес. Автомобиль может двигаться не только вперед, но и скользить вбок, например, в случае чего часть движения не будет измерена спидометром. Величина вектора rigidbody.velocity у объекта дает скорость в направлении его общего движения, но для изоляции скорости в переднем направлении - нужно использовать скалярное произведение:-

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

Естественно, направление может быть каким угодно, но вектор направления должен всегда быть нормализован для этого вычисления. Так не только результат будет более корректным чем величина скорости, но и позволит избежать медленной операции вычисления квадратного корня, используемой в нахождении величины.

Вычисление нормали/перпендикуляра
Scripting Tools