using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraSmoothMove : MonoBehaviour { public Transform startPoint; // 起始点 public Transform endPoint; // 终点 public float duration = 5f; // 移动所需的时间(秒) private float elapsedTime = 0f; // 记录已经过去的时间 void Update() { // 确保起始点和终点存在 if (startPoint != null && endPoint != null) { // 更新经过的时间 elapsedTime += Time.deltaTime; // 计算摄像机的位置:根据时间比例计算当前位置 float t = Mathf.Clamp01(elapsedTime / duration); // 使用 Lerp 平滑过渡摄像机的位置 transform.position = Vector3.Lerp(startPoint.position, endPoint.position, t); } } }