C# 团结;矢量3.前进,更改x位置,未声明z位置

C# 团结;矢量3.前进,更改x位置,未声明z位置,c#,unity3d,qvector3d,C#,Unity3d,Qvector3d,有人能解释一下为什么当我声明“Vector3.Forward”或等效的“Vector3(0,0,1)”时,它会在X位置而不是Z位置更改游戏对象吗?这真的很简单,但我说不出话来。1所在的第三个变量用于z位置,而不是x位置。对吧? 代码是有效的,我只是对它背后的逻辑感到困惑。你说的“它改变”是什么意思?-你在撒谎吗 如果你是,你可能是在本地空间翻译它。如果要在世界空间中进行转换,请将第二个参数添加到。如下所示进行转换: transform.Translate(Vector3.forward * Ti

有人能解释一下为什么当我声明“Vector3.Forward”或等效的“Vector3(0,0,1)”时,它会在X位置而不是Z位置更改游戏对象吗?这真的很简单,但我说不出话来。1所在的第三个变量用于z位置,而不是x位置。对吧?

代码是有效的,我只是对它背后的逻辑感到困惑。

你说的“它改变”是什么意思?-你在撒谎吗

如果你是,你可能是在本地空间翻译它。如果要在世界空间中进行转换,请将第二个参数添加到。如下所示进行转换:

transform.Translate(Vector3.forward * Time.deltaTime, Space.World);
你说的“它改变”是什么意思?-你在撒谎吗

如果你是,你可能是在本地空间翻译它。如果要在世界空间中进行转换,请将第二个参数添加到。如下所示进行转换:

transform.Translate(Vector3.forward * Time.deltaTime, Space.World);

很可能是莱斯特在回答中所说的,下次请在你的问题中添加代码。这将有助于人们理解你做错了什么。很可能莱斯特在回答中所说的,下次请在你的问题中添加代码。它将帮助人们理解你做错了什么。