unity3d 当我说开始游戏时,我的摄像头没有跟随玩家

5ssjco0h  于 2022-11-15  发布在  其他
关注(0)|答案(2)|浏览(146)

我只是想把它变得简单些。我不明白我的密码出了什么问题。
我的代码:

public class CameraFollow : MonoBehaviour
{

  public Transform Target;
  public Vector3   offset;

  void LateUptade()
  {
    transform.position = Vector3.Lerp(transform.position, Target.position + offset, Time.deltaTime * 2);
  }
}
xoshrz7s

xoshrz7s1#

代码中需要注意的两件事。
1.它是LateUpdate而不是LateUptade。
1.在lerp中,如果第三个输入为1,摄像机将立即跳到目标+偏移,如果您希望摄像机从其位置缓慢移动到目标+偏移,则需要每帧将第三个输入的值从0增加到1。
你也可以使用Cinemachine让相机跟随播放器。看看这个Camera follow player tutorial,了解让相机跟随播放器的不同方法。

7cjasjjr

7cjasjjr2#

不要Time.deltaTime放在Lerp中。懒惰的解决方案是简单地写一个0和1之间的常量。

此外,函数名称中有一个排印错误。它应该是LateUpdate,而不是LateUptade

transform.position = Vector3.Lerp(transform.position, Target.position + offset, 0.3f);

相关问题