Unity3D小功能模块实现2:摄像机跟随

第一种方法:使用Cinemachine插件实现摄像机跟随

1. 安装Cinemachine插件

  1. 打开Unity,导航到 Window > Package Manager
  2. 在Package Manager窗口中,搜索并选择 Cinemachine
  3. 点击 Install 按钮安装Cinemachine插件。

2. 设置Cinemachine虚拟摄像机

  1. 在项目视图中,右键点击并选择 Create > Cinemachine > Create FreeLook Camera 创建一个新的Cinemachine FreeLook虚拟摄像机。
  2. 在Inspector面板中,找到 FollowLook At 字段,将它们分别设置为玩家角色(Player)对象。

3. 配置Cinemachine虚拟摄像机

  1. 选择Cinemachine FreeLook Camera对象,在Inspector面板中进行以下配置:
    • Orbits:设置轨道半径和高度以控制摄像机的偏移量。您可以根据需要调整以下参数:
      • Top Rig: 高度和半径
      • Middle Rig: 高度和半径
      • Bottom Rig: 高度和半径
    • Follow:设置为Player对象。
    • Look At:设置为Player对象。
    • Axis Control:可以调整摄像机的旋转速度和灵敏度。

4. 测试摄像机跟随效果

  1. 点击播放按钮,测试摄像机是否能够平滑地跟随玩家角色。

二、使用自定义脚本实现摄像机跟随

1. 创建并附加摄像机跟随脚本

  1. 在项目视图中,右键点击并选择 Create > C# Script 创建一个新的C#脚本,命名为 CameraFollow
  2. 将脚本拖动到主摄像机(Main Camera)对象上,以附加该脚本到主摄像机对象。
  3. 双击 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. 配置脚本参数

  1. 选择主摄像机对象,在Inspector面板中配置 CameraFollow 脚本的参数:
    • Target:设置为Player对象。
    • Offset:根据需求调整摄像机的偏移量。例如,可以设置为(0, 5, -10)以使摄像机在玩家上方并稍后方的位置。
    • Smooth Speed:可以根据需求调整平滑过渡速度。例如,可以设置为0.125f。

3. 测试摄像机跟随效果

  1. 点击播放按钮,测试摄像机是否能够平滑地跟随玩家角色。
  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风不归Alkaid

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值