_xiaofang/xiaofang/Assets/Script/hylScripts/CameraSmoothMove.cs
2024-12-18 11:17:37 +08:00

30 lines
801 B
C#

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);
}
}
}