📜  c# unity 相机跟随玩家水平轴 - C# (1)

📅  最后修改于: 2023-12-03 15:13:49.788000             🧑  作者: Mango

C# Unity 相机跟随玩家水平轴

在Unity游戏中,相机跟随玩家是非常重要的功能之一。特别是在横版游戏中,相机需要跟随玩家在水平轴上移动,以保持玩家可见。

相机跟随玩家

相机跟随玩家的基本方法是设置相机的位置为玩家的位置。这种方法可以采用Lerp插值函数来平滑相机的跟随效果。

下面是一个示例代码:

public class CameraController : MonoBehaviour {
    
    public Transform playerTransform; // 玩家Transform
    public float smoothTime = 0.3f; // 相机跟随的平滑时间
    public Vector3 cameraOffset; // 相机偏移量

    private Vector3 velocity = Vector3.zero;

    void LateUpdate() {
        Vector3 targetPosition = playerTransform.position + cameraOffset;
        transform.position = Vector3.SmoothDamp(transform.position, targetPosition, ref velocity, smoothTime);
    }
}

在上面的代码中,我们通过设置playerTransform来获取玩家在场景中的Transform。

然后,在LateUpdate函数中更新相机的位置为玩家的位置加上相机偏移量cameraOffset。我们使用Unity自带的SmoothDamp函数来平滑相机的跟随效果,以达到更好的效果。

在这个例子中,我们使用了一个velocity变量来储存相机移动的速度。这个变量将传递给SmoothDamp函数,使得相机移动的平滑过渡。

总结

在这篇文章中,我们介绍了如何在Unity中通过C#来实现相机跟随玩家水平轴移动的功能。通过使用TransformSmoothDamp函数,我们可以轻松地实现一个平滑的相机跟随效果。

以上就是本篇文章的全部内容,希望对你有所帮助!