角色视角控制

该博客介绍了如何在Unity3D中实现摄像机跟随角色移动,并通过鼠标右键操作来控制视角的上下及旋转,同时利用滚轮进行场景缩放,为游戏或虚拟环境提供流畅的视角体验。
摘要由CSDN通过智能技术生成

摄像机跟随角色,鼠标右键控制视角上下及旋转,滚轮控制缩放

using UnityEngine;
public class FollowPlayer : MonoBehaviour {
    public GameObject player;
    Vector3 offset;
    void Start() {
        offset = this.transform.position - player.transform.position;
    }    
    void Update () 
    {
        this.transform.position = offset+player.transform.position;
        if (Input.GetMouseButton(1))
        {
            Vector3 originalPosition = transform.position;
            Quaternion originalRotation = transform.rotation;
            transform.RotateAround(player.transform.position, Vector3.up, Time.deltaTime * 300 * Input.GetAxis("Mouse X"));
            transform.RotateAround(player.transform.position, transform.right, -Time.deltaTime * 300 * Input.GetAxis("Mouse Y"));
            //限制视角上下移动的角度。
            if (transform.eulerAngles.x > 60 || transform.eulerAngles.x < 0)
            {
                transform.position = originalPosition;
                transform.rotation = originalRotation;
            }
            offset = this.transform.position - player.transform.position;
        }
        Camera.main.fieldOfView = Mathf.Clamp(Camera.main.fieldOfView - Input.GetAxis("Mouse ScrollWheel") * 30, 20, 100);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值