Unity3D_游戏物体随着鼠标转动

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

public class GunManager : MonoBehaviour
{
    //规定 最大X轴的旋转
    public float maxXRoutation = 70;
    //规定 最小X轴的旋转
    public float minXRoutation = 0;
    //规定 最大Y轴的旋转
    public float maxYRoutation = 50;
    //规定 最小Y轴的旋转
    public float minYRoutation = 0;

    // Start is called before the first frame update
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {

        //获取屏幕鼠标屏幕的位置 0-1之间 从左到右
        float xMouse = Input.mousePosition.x / Screen.width; 
        //获取屏幕鼠标屏幕的位置 0-1之间 从上到下
        float yMouse = Input.mousePosition.y / Screen.height;

        //限定值的范围
        //Mathf.Clamp(yMouse * maxXRoutation, minXRoutation, maxXRoutation)
        //Mathf.Clamp(要限定的值, 最小值范围, 最大值范围)
        //如果要限定的值 在minXRoutation到maxXRoutation 之间就返回
        float xAngle = Mathf.Clamp(yMouse * maxXRoutation,minXRoutation,maxXRoutation) - 20;
        float yAngle = Mathf.Clamp(xMouse * maxYRoutation, minYRoutation, maxYRoutation) - 200f;
        //设置枪的欧拉角 Gun枪的旋转
        transform.eulerAngles = new Vector3(-xAngle,yAngle,0);
    }
}

实现效果:

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值