当前位置 : 主页 > 编程语言 > c语言 >

C# – 我如何拥有2个游戏对象总是具有相同的y值

来源:互联网 收集:自由互联 发布时间:2021-06-25
我目前在我的场景中有一个立方体,我已经四处移动了.我希望另一个立方体始终具有相同的y值.因此,如果第一个立方体向下移动10个单位,我希望另一个立方体做同样的事情. 我的第一个多
我目前在我的场景中有一个立方体,我已经四处移动了.我希望另一个立方体始终具有相同的y值.因此,如果第一个立方体向下移动10个单位,我希望另一个立方体做同样的事情.

我的第一个多维数据集是在编辑器中手动创建的,但我的另一个是使用脚本放置的.谢谢!

您可以如已经说过的那样使用父子关系,但是父母的每次移动都会导致孩子在x,y和z坐标上移动.

如果您希望其他对象仅遵循y坐标而不是其他对象,则不能使用父子关系.

相反,你可以使用一个脚本(灵感来自:https://answers.unity.com/questions/543461/object-follow-another-object-on-the-x-axis.html)

using UnityEngine;
 using System.Collections;

 public class SameYCoordinateAsOther : MonoBehaviour {

     Transform otherTransform;

     void Start() {
        // you can set a reference to the "parent" cube
        otherTransform = GameObject.Find("cube1").transform;
     }

     void Update() {
        // here we force the position of the current object to have the same y as the parent
        transform.position = new Vector3(transform.position.x, otherTransform.position.y, transform.position.z);
     }
}

您只需将此脚本附加到必须“跟随”y轴上的第一个立方体的任何对象.

此脚本将强制第二个对象具有与第一个对象相同的y值.

如果您不希望它们具有相同的值,但只是移动量相同,则会更复杂一些.

网友评论