我只是想把它变得简单些。我不明白我的密码出了什么问题。
我的代码:
public class CameraFollow : MonoBehaviour
{
public Transform Target;
public Vector3 offset;
void LateUptade()
{
transform.position = Vector3.Lerp(transform.position, Target.position + offset, Time.deltaTime * 2);
}
}
2条答案
按热度按时间xoshrz7s1#
代码中需要注意的两件事。
1.它是LateUpdate而不是LateUptade。
1.在lerp中,如果第三个输入为1,摄像机将立即跳到目标+偏移,如果您希望摄像机从其位置缓慢移动到目标+偏移,则需要每帧将第三个输入的值从0增加到1。
你也可以使用Cinemachine让相机跟随播放器。看看这个Camera follow player tutorial,了解让相机跟随播放器的不同方法。
7cjasjjr2#
不要将
Time.deltaTime
放在Lerp
中。懒惰的解决方案是简单地写一个0和1之间的常量。此外,函数名称中有一个排印错误。它应该是
LateUpdate
,而不是LateUptade
。