Quaternion.LookRotation
Declaration
public static Quaternion LookRotation(Vector3 forward, Vector3 upwards = Vector3.up);Параметры
| Параметр | Описание |
|---|---|
| вперед | Направление, в котором нужно смотреть, в мировых координатах. |
| вверх | Вектор, который определяет, в каком направлении вверх, в мировых координатах. |
Описание
Создает вращение с указанными направлениями forward и upwards.
Ось Z будет выравниваться с forward, ось X будет выравниваться с перекрестным произведением между forward и upwards, а ось Y будет выравниваться с перекрестным произведением между Z и X.
Если вектор forward равен нулю, метод регистрирует ошибку в консоли и возвращает identity.
Если forward и upwards коллинеарны, или если величина upwards равна нулю, результат будет таким же, как Quaternion.FromToRotation с fromDirection установленным на положительную ось Z (0, 0, 1) и toDirection установленным на нормализованное направление forward.
// You can also use transform.LookAt
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Transform target;
void Update() { Vector3 relativePos = target.position - transform.position;
// the second argument, upwards, defaults to Vector3.up Quaternion rotation = Quaternion.LookRotation(relativePos, Vector3.up); transform.rotation = rotation; } }
Дополнительные ресурсы: ,SetLookRotation,.