Unity如何实现第三人称相机跟随

该文介绍如何在Unity中创建一个简单的第三人称相机跟随系统,通过鼠标滚轮调整相机与游戏对象的距离,按住鼠标右键可旋转视角,同时保持相机始终面向游戏对象。主要步骤包括设置相机子层级、标签,编写并挂载CameraFollow脚本,以及在Update方法中处理滚动和旋转逻辑。

效果

我们需要实现简易的,泛用性高的第三人称相机跟随,通过鼠标滚轮可以控制与对象物体的远近距离,按住鼠标右键拖动鼠标可以控制相机视角跟随物体旋转,并且相机始终朝向游戏对象。

实现步骤

1.在层级区域把主相机拖入玩家物体作为玩家的子层级,并且调整好适当的距离。

2.因为后期会用到标签查找,所以需要在右上角Inspector区域把玩家的标签设置为“Player”。

3.创建脚本,脚本名称为“CameraFollow”,创建完后挂载到相机上。(脚本名称也可以自拟,但是复制时要注意名字,Unity中的代码文件名和代码中的命名空间一定要一致

编辑脚本(逻辑和参数含义已注释):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraFollow : MonoBehaviour {

    private Transform player;//玩家位置
    private Vector3 offsetPosition; //位置偏移
    private bool mouse1Down;//是否按下鼠标右键

    public float distance;
    public float scrollSpeed = 10;//视野远近变化的速度
    public float RotateSpeed = 2;//相机镜头转向的速度

    void Start()
    {    
        player = GameObject.FindGameObjectWithTag("Player").transform;//查找对象
        transform.LookAt(player.position);//相机指向player
        offsetPo
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值