Unity摄像机缓动功能的实现

  Unity中摄像机的缓动功能是非常容易实现的,主要用到Vector3 Lerp(Vector3 a, Vector3 b, float t);

public class MainCameraCtr : MonoBehaviour
{
    public Transform playerTransform;//玩家坐标
    private Vector3 offset;
    private float cameraMoveSpeed;
    void Start()
    {
        offset = transform.position - playerTransform.position;
    }
    void LateUpdate()
    {
        Vector3 newPosition = playerTransform.position + offset;
        transform.position = Vector3.Lerp(transform.position, newPosition, cameraMoveSpeed * Time.deltaTime);
        
    }
}

transform.position以speed* time.deltaTime的比例无限接近newposition,该比例(0-- > 1)越大,接近越快,缓动越不明显

猜你喜欢

转载自blog.csdn.net/weixin_43492764/article/details/84578384