版本: Unity 6 (6000.0)
语言英语
  • C#

Quaternion.LookRotation

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每项更改建议,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的更改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public static Quaternion LookRotation(Vector3 forward, Vector3 upwards = Vector3.up);

参数

forward 要朝向的方向。
upwards 定义向上方向的向量。

描述

使用指定的 forwardupwards 方向创建旋转。

Z 轴将与 forward 对齐,X 轴与 forwardupwards 的叉积对齐,Y 轴与 Z 和 X 的叉积对齐。

如果 forward 的大小为零,则返回单位矩阵。
如果 forwardupwards 共线,或者 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