Version: 2018.4
Вычисление нормали/перпендикуляра
Инструменты Скриптинга

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

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

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

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

Вычисление нормали/перпендикуляра
Инструменты Скриптинга
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961