在c# /Unity3D中Vector2转换为Vector3

本文关键字:转换 Vector3 Vector2 Unity3D | 更新日期: 2023-09-27 18:14:54

我有一些像这样的代码

Vector3 someFun (Vector2 v) {
    return new Vector2 (...);
}

如你所见,类型不匹配,但没有错误。Vector2是继承自Vector3还是两者之间有关系?

在c# /Unity3D中Vector2转换为Vector3

如果我理解他们在这里找到的文档,他们使用隐式操作符将Vector3转换为Vector2,反之亦然。我认为它们是结构(为了更好的性能),这就排除了继承。

您可以在Vector3构造函数中传递所需的值:

Vector3 someFun (Vector2 v) {
    return new Vector3 (v.x, v.y, 0.0f);
}