根据对象设置位置

时间:2016-09-19 15:53:31

标签: c# unity3d unity5

我希望objekt在某种条件下与另一个objekt具有相同的位置 我试图让它成为目标objekt位置与此objekt + 2x

相同

这是大剧本的一小部分......

以下代码示例: 如果是player1.x == 10

对于evry帧,这会在x

上移动10

我需要这样: this.x = player1.x

using UnityEngine;
using System.Collections;

public class test : MonoBehaviour {

    public Transform player1;

    // Use this for initialization
    void Start () {


    // Update is called once per frame
    void Update () {
    Vector3 playerPos = player1.position;
    transform.Translate(playerPos);

    }
}

1 个答案:

答案 0 :(得分:0)

我很确定你误解了transform.Translate(Vector3 vec)是如何运作的。

相当于:transform.position += vec这是相对于当前位置的翻译。

你想做什么(如果我理解你的话)只是将位置设置为等于transform.position = playerPos

参考:https://docs.unity3d.com/ScriptReference/Transform.Translate.html