Version: 2020.3

Vector3

struct in UnityEngine

切换到手册

描述

用于表示 3D 向量和点。

Unity 内部使用该结构传递 3D 位置和方向。 此外,它还包含用于执行常见向量操作的函数。

除了下面列出的函数以外,也可以使用其他类操作向量和点。 例如,对于旋转或变换向量和点来说,QuaternionMatrix4x4 类也很有用。

静态变量

back用于编写 Vector3(0, 0, -1) 的简便方法。
down用于编写 Vector3(0, -1, 0) 的简便方法。
forward用于编写 Vector3(0, 0, 1) 的简便方法。
left用于编写 Vector3(-1, 0, 0) 的简便方法。
negativeInfinity用于编写 Vector3(float.NegativeInfinity, float.NegativeInfinity, float.NegativeInfinity) 的简便方法。
one用于编写 Vector3(1, 1, 1) 的简便方法。
positiveInfinity用于编写 Vector3(float.PositiveInfinity, float.PositiveInfinity, float.PositiveInfinity) 的简便方法。
right用于编写 Vector3(1, 0, 0) 的简便方法。
up用于编写 Vector3(0, 1, 0) 的简便方法。
zero用于编写 Vector3(0, 0, 0) 的简便方法。

变量

magnitude返回该向量的长度。(只读)
normalized返回 magnitude 为 1 时的该向量。(只读)
sqrMagnitude返回该向量的平方长度。(只读)
this[int]分别使用 [0]、[1]、[2] 访问 x、y、z 分量。
x向量的 X 分量。
y向量的 Y 分量。
z向量的 Z 分量。

构造函数

Vector3使用给定的 x、y、z 分量创建新向量。

公共函数

Equals如果给定向量与该向量完全相等,则返回 true。
Set设置现有 Vector3 的 x、y 和 z 分量。
ToStringReturns a formatted string for this vector.

静态函数

Angle返回 from 与 to 之间的角度(以度为单位)。
ClampMagnitude返回 vector 的副本,其大小被限制为 /maxLength/。
Cross两个向量的叉积。
Distance返回 a 与 b 之间的距离。
Dot两个向量的点积。
Lerp在两个点之间进行线性插值。
LerpUnclamped在两个向量之间进行线性插值。
Max返回由两个向量的最大分量组成的向量。
Min返回由两个向量的最小分量组成的向量。
MoveTowards计算 current 指定的点与 target 指定的点之间的位置,移动距离不超过 maxDistanceDelta 指定的距离。
Normalize使该向量的 magnitude 为 1。
OrthoNormalize将向量标准化并使它们彼此正交。
Project将向量投影到另一个向量上。
ProjectOnPlane将向量投影到由法线定义的平面上(法线与该平面正交)。
Reflect从法线定义的平面反射一个向量。
RotateTowards将向量 current 朝 target 旋转。
Scale将两个向量的分量相乘。
SignedAngle返回 from 与 to 之间的有符号角度(以度为单位)。
Slerp在两个向量之间进行球形插值。
SlerpUnclamped在两个向量之间进行球形插值。
SmoothDamp随时间推移将一个向量逐渐改变为所需目标。

运算符

operator -将一个向量减去另一个向量。
operator !=如果向量不同,则返回 true。
operator *将向量乘以一个数值。
operator /将向量除以一个数值。
operator +将两个向量相加。
operator ==如果两个向量大致相等,则返回 true。