Unity3d 转换。转换不能在统一中正常工作

Unity3d 转换。转换不能在统一中正常工作,unity3d,unityscript,Unity3d,Unityscript,我正在开发一个游戏,在其中我想要无限的道路,所以我创建了40个实例的道路,我想重复一遍又一遍 我正在编写以下代码来更改道路的位置,该位置现在在摄影机中不可见,并且可以重复 roadPaths[currentRoad].transform.Translate(Vector3(0,0,startPositionValue)); 但是我得到了下面的日志 在上面的日志中,您可以看到当startPositionValue为42时,currentRoad position变为43。其他值也存在同样的问

我正在开发一个游戏,在其中我想要无限的道路,所以我创建了40个实例的道路,我想重复一遍又一遍

我正在编写以下代码来更改道路的位置,该位置现在在摄影机中不可见,并且可以重复

roadPaths[currentRoad].transform.Translate(Vector3(0,0,startPositionValue)); 
但是我得到了下面的日志

在上面的日志中,您可以看到当startPositionValue为42时,currentRoad position变为43。其他值也存在同样的问题


非常感谢您的帮助。

我终于能够解决这个问题了

下面的代码可以工作

roadPaths[currentRoad].transform.position=Vector3(0,0,startPositionValue);

平移是游戏对象在三维空间中的相对移动。从字面上看,它将当前位置的相对值转换为新位置,该位置是原始位置的偏移量


明确设置游戏对象变换的位置向量将使其在世界上处于绝对位置。

我认为这很简单:

transform.Translate(X, Y, Z);
例如:

transform.Translate(5 * Time.deltaTime, 0, 0);
//GameObject moves smooth at the positive direction of the X position

unity标签用于Microsoft unity。别误用了,嗨,莱克斯,我很抱歉。