创建 Vector3

可以通过多种方式创建 Vector3 结构。Vector3 是一个结构,因此通常需要在使用前进行实例化。

构造函数

有三个内置的构造函数用于实例化 Vector3

构造函数 结果
new Vector3() 创建一个坐标为(0,0,0)的 Vector3 结构。
new Vector3(float x, float y) 使用给定的 xy 坐标创建 Vector3 结构。z 将设置为 0。
new Vector3(float x, float y, float z) 使用给定的 xyz 坐标创建 Vector3 结构。

转换为 Vector2Vector4

虽然很少见,但你可能会遇到需要将 Vector2Vector4 结构的坐标视为 Vector3 的情况。在这种情况下,你可以直接将 Vector2Vector4 直接传递到 Vector3,而无需事先进行实例化。应该假设,Vector2 结构只传递 xy 值,而 Vector4 类将省略它的 w

我们可以在下面的脚本中看到直接转换。

void VectorConversionTest()
{
    Vector2 vector2 = new Vector2(50, 100);
    Vector4 vector4 = new Vector4(50, 100, 200, 400);

    Vector3 fromVector2 = vector2;
    Vector3 fromVector4 = vector4;

    Debug.Log("Vector2 conversion: " + fromVector2);
    Debug.Log("Vector4 conversion: " + fromVector4);
}

调试输出确认 Vector2 和 Vector4 都已成功转换为 Vector3。