第一种方法:使用Cinemachine插件实现摄像机跟随
1. 安装Cinemachine插件
- 打开Unity,导航到
Window > Package Manager
。 - 在Package Manager窗口中,搜索并选择
Cinemachine
。 - 点击
Install
按钮安装Cinemachine插件。
2. 设置Cinemachine虚拟摄像机
- 在项目视图中,右键点击并选择
Create > Cinemachine > Create FreeLook Camera
创建一个新的Cinemachine FreeLook虚拟摄像机。 - 在Inspector面板中,找到
Follow
和 Look At
字段,将它们分别设置为玩家角色(Player)对象。
3. 配置Cinemachine虚拟摄像机
- 选择Cinemachine FreeLook Camera对象,在Inspector面板中进行以下配置:
- Orbits:设置轨道半径和高度以控制摄像机的偏移量。您可以根据需要调整以下参数:
- Top Rig: 高度和半径
- Middle Rig: 高度和半径
- Bottom Rig: 高度和半径
- Follow:设置为Player对象。
- Look At:设置为Player对象。
- Axis Control:可以调整摄像机的旋转速度和灵敏度。
4. 测试摄像机跟随效果
- 点击播放按钮,测试摄像机是否能够平滑地跟随玩家角色。
二、使用自定义脚本实现摄像机跟随
1. 创建并附加摄像机跟随脚本
- 在项目视图中,右键点击并选择
Create > C# Script
创建一个新的C#脚本,命名为 CameraFollow
。 - 将脚本拖动到主摄像机(Main Camera)对象上,以附加该脚本到主摄像机对象。
- 双击
CameraFollow
脚本打开Visual Studio或其他代码编辑器,并输入以下代码:
using UnityEngine;
public class CameraFollow : MonoBehaviour
{
public Transform target;
public Vector3 offset;
public float smoothSpeed = 0.125f;
void LateUpdate()
{
Vector3 desiredPosition = target.position + offset;
Vector3 smoothedPosition = Vector3.Lerp(transform.position, desiredPosition, smoothSpeed);
transform.position = smoothedPosition;
transform.LookAt(target);
}
}
2. 配置脚本参数
- 选择主摄像机对象,在Inspector面板中配置
CameraFollow
脚本的参数:
- Target:设置为Player对象。
- Offset:根据需求调整摄像机的偏移量。例如,可以设置为(0, 5, -10)以使摄像机在玩家上方并稍后方的位置。
- Smooth Speed:可以根据需求调整平滑过渡速度。例如,可以设置为0.125f。
3. 测试摄像机跟随效果
- 点击播放按钮,测试摄像机是否能够平滑地跟随玩家角色。