将距离添加到 x 轴和 z 轴
Add distance to x axis and z axis
我正在制作台球游戏。我打算做的是当玩家调整滑块时,x 轴和 z 轴也应该调整。统一中是否有增加距离或类似于该功能的功能?
如果您在检查器中谈论滑块,那么您将需要使用统一的“OnValidate”函数,该函数会在检查器中的值发生变化时更新 class。
如果您已经对它进行了排序并且只是想知道如何使对象沿其轴移动,那么您将想要做
SomeObject.transform.position += SomeObject.transform.left * moveLeftAmount
这将向矢量的左方向添加一个距离,然后
SomeObject.transform.position += SomeObject.transform.up * moveUpAmount
会为 Y 方向做。如果您希望它是相对的,那么只需使用 class 变量跟踪对象的位置并根据 SomeObject.transform.left * distanceValue
从那里偏移它
您可以使用变换的 Translate
方法从当前位置移动一定量。另外,它默认移动到本地 space。以下所有内容均有效:
obj.transform.Translate(rightAmount, 0f, 0f);
obj.transform.Translate(rightAmount, upAmount, forwardAmount);
obj.transform.Translate(-leftAmount, -downAmount, -backwardAmount);
我正在制作台球游戏。我打算做的是当玩家调整滑块时,x 轴和 z 轴也应该调整。统一中是否有增加距离或类似于该功能的功能?
如果您在检查器中谈论滑块,那么您将需要使用统一的“OnValidate”函数,该函数会在检查器中的值发生变化时更新 class。
如果您已经对它进行了排序并且只是想知道如何使对象沿其轴移动,那么您将想要做
SomeObject.transform.position += SomeObject.transform.left * moveLeftAmount
这将向矢量的左方向添加一个距离,然后
SomeObject.transform.position += SomeObject.transform.up * moveUpAmount
会为 Y 方向做。如果您希望它是相对的,那么只需使用 class 变量跟踪对象的位置并根据 SomeObject.transform.left * distanceValue
您可以使用变换的 Translate
方法从当前位置移动一定量。另外,它默认移动到本地 space。以下所有内容均有效:
obj.transform.Translate(rightAmount, 0f, 0f);
obj.transform.Translate(rightAmount, upAmount, forwardAmount);
obj.transform.Translate(-leftAmount, -downAmount, -backwardAmount);