Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 统一中的无尽走廊–;向量3_C#_Unity3d - Fatal编程技术网

C# 统一中的无尽走廊–;向量3

C# 统一中的无尽走廊–;向量3,c#,unity3d,C#,Unity3d,我很难找到解决办法:我有一个球,它沿着走廊移动。为了创造一种错觉,即走廊是无穷无尽的,球被传送回某个点,周围的环境看起来与传送点完全相同 为此,我需要更改球的X位置,而不更改球的当前y或z位置 我试过: if (transform.position.x <= -20) { transform.position = new Vector3(60, transform.position.y, transform.position.z); } if(transform.position

我很难找到解决办法:我有一个球,它沿着走廊移动。为了创造一种错觉,即走廊是无穷无尽的,球被传送回某个点,周围的环境看起来与传送点完全相同

为此,我需要更改球的X位置,而不更改球的当前y或z位置

我试过:

if (transform.position.x <= -20) {
    transform.position = new Vector3(60, transform.position.y, transform.position.z);
}

if(transform.position.x我相信这就是您想要的:

if (transform.position.x <= -20) {
    transform.position = new Vector3(transform.x + 20, transform.position.y, transform.position.z);
}

if(transform.position.x谢谢你的帮助!你说的我们完全正确。我只是需要得到游戏对象。
解决方案:

if (gameObject.transform.position.x <= -20) {
    gameObject.transform.position = new Vector3 (60, transform.position.y, transform.position.z);
    }

if(gameObject.transform.position.x)”但这也会将球设置回y和z位置你的代码看起来像。球是任何对象的子对象吗?不,它不是子对象。我不知道如何只更改x坐标,而其他坐标不更改。有没有办法从向量3中减去20x,而其他两个值不受影响?你可能会注意到,我是c#初学者:)我希望你能help@TobiasLorenz你确定不是小孩吗?听起来像。无论如何,要回答你在评论中的问题,应该是transform.position-=new Vector3(20,0,0)谢谢,但这正是我以前做的(只是我已经有了x的值,而不是做加法)似乎transform.position.y和transform.position.z正在将球设置回零。但当前的y和z位置不应更改:(@TobiasLorenz)“将球设置回零”是什么意思我怀疑这个答案和下面的答案。
gameObject.transform
transform.position
相同。您的代码还有其他问题。