繁体   English   中英

统一跟随玩家的游戏对象

[英]Gameobject that follow a player in unity

我是 unity 的新手,我尝试让游戏对象跟随我的玩家,但结果是我的游戏对象朝相反的方向移动。

这是我的代码

public class Ennemy : MonoBehaviour
{
    private Transform _transform;
    private Transform _target;
    
   /* public Transform Target
    {
        get => _target;
        set => _target = value;
    }
*/
    private void Start()
    {
        _transform = transform;
        _target = GameObject.FindGameObjectWithTag("Player").transform;
    }


    // Update is called once per frame
    void Update()
    {
        _transform.Translate(_target.position * (1f * Time.deltaTime), Space.Self);
    }

尝试否定_target.position ,通过执行-_target.position

此外,将Time.deltaTime乘以 1 不会对 deltaTime 产生任何影响,因此除非您计划更改,否则您可以省略1f *

Translate(...) 通过传入的向量移动对象。 因此你必须计算玩家的方向

Vector3 dir = (_target.position - _transform.position).normalized;
_transform.Translate(dir * Time.deltaTime);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM