【发布时间】:2022-01-16 07:36:07
【问题描述】:
标题说明了一切。如果有帮助的话,我经常看到它们在动作脚本中使用。什么是 Vector2 和 Vector3,Unity 文档对于新手来说有点难以理解。
【问题讨论】:
-
mathinsight.org/vector_introduction 这是基本介绍。向量主要用于表示方向。或者在力的情况下 - 方向和大小。我建议您在数学网站上询问它或研究 Unity 之外的向量。这将是有价值的。
标题说明了一切。如果有帮助的话,我经常看到它们在动作脚本中使用。什么是 Vector2 和 Vector3,Unity 文档对于新手来说有点难以理解。
【问题讨论】:
向量是对方向和幅度进行建模的数学模型。 Vector2 是 2D,Vector3 是 3D。
vector2(1,5) 是一个比例为 1 部分 x 和 5 部分 y 的方向。例如,向右 1/6 行,向上 5/6 行。负数将分别使线向左和向下。
幅度显示方向的“强度”。例如,当使用力和物理时,即使方向相同,在 vector2(1,0) 中推动某些东西的向右推动也比 vector2(100,0) 弱得多。
这应该是给你的基本理论介绍。
【讨论】:
Vector 基本上是一个 quantity,它有一个 direction:quantity 被称为 magnitude strong> 的向量,方向称为归一化向量。
向量用它的分量表示:向量在每个轴上的投影称为向量的组件。
Vector1 有一个1D 方向,就像一条线上的一个点,或者一个方向盘的值,或者任何实数。 例如(0) 或 (-1000)。 Vector1 的大小等于向量的x 分量或sqrt(x^2) 的绝对值。
Vector2 具有2D 方向,例如 2D 空间中的 xy 点,或操纵杆的位置,或 2D 中点的 uv 偏移量质地。 例如(0,0) 或 (-1, 100)。 Vector2 的大小等于sqrt(x^2+y^2)。
Vector3 具有3D 方向,例如 3D 空间中的 xyz 点、RGB 格式的颜色或一组三个数字。 例如(0,0,0) 或 (-0.1, 3.14, 30)。 Vector3 的大小等于sqrt(x^2+y^2+z^2)。
Vector4 具有4D 方向,例如 4D 空间中的 xyzw 点,或 RGBA 格式的颜色,或一组四个数字。 例如(0,0,0,0) 或 (0.1, 0.2, 0.3, 0.4)。 Vector4 的大小等于sqrt(x^2+y^2+z^2+w^2)。
【讨论】:
vector2(跳跃操纵 Y)。并将vector2 分配给transform.position,即vector3 会自动将其转换为vector3,其z 等于0
是2D向量和点的表示,用来表示2D位置,只有两个轴x&y。
Debug.log(new Vector2(1, 2) - new Vector2(3, 2));
打印(-new Vector2(1, 2));
它是3D向量和点的表示,用于表示3D位置,考虑x、y和z轴。
Vector3 offset = transform.position - player.transform.position;
1.transform.Translate(Vector3.forward * Time.deltaTime * speed)
【讨论】: