unity中如何解决两个物体的绑定

2025-10-26 12:03:55

1、把A物体放进B物体中,A物体作为B物体的子物体,这样就把B物作为父物体,这样不管B物移动到那里,它和A保持的距离还是一致的。不会因为B移动,A就离B远了。

unity中如何解决两个物体的绑定

2、导入unity中自带的跟随物体的脚本SmoothFollow。可以自行设置两者的距离和高度,得到你的要求。

3、自己写脚本控制。 脚本如下:

using UnityEngine;using System.Collections;public class FllowTarget : MonoBehaviour {    public Transform B;   //A要跟随的B    public float smoothTime = 0.01f;  //A平滑移动的时间    private Vector3 AVelocity = Vector3.zero;    private A mainA;  //A       void  Awake ()     {       mainA = A.main;    }    void  Update()    {        transform.position = Vector3.SmoothDamp(transform.position, B.position + new Vector3(0, 0, -5), ref AVelocity, smoothTime);    }  }

4、将这段代码拖动给A,然后记得添加B 。好了  现在你就能看见效果了。

5、B.position + new Vector3(0, 0, -5)这个就是相当于A的位置,也就是A距离B往后5个单位长度。此处也可以根据情况将两者设置为重合,不需要加位移。

6、主要就是Vector3.SmoothDamp() 这个函数。里面的第一个参数就是当前的位置。  第二个参数就是要接近的位置。  第三个参数就是 当前速度,这个值由你每次调用这个函数时被修改。 第四个参数就是完成这个位移移动所花费的时间。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢