Unity3D---Input虚拟轴/按键

部分内容由千峰教育(莫新宇)听课笔记总结

Tips:

选中摄像机CTRL+SHIFT+F把摄像头视图变得和当前scene视图一样。其实就是修改了摄像头的transform 

预设文件夹名称:Materials、Scenes、Scripts、Prefebs

键盘命令

Input.GetKey   按住

Input.GetKeyDown   按下

Input.GetKeyUp   抬起

Unity中有焦点问题,区域有不同焦点

范例:

using UnityEngine;

public class BallMove : MonoBehaviour {
    public float moveSpeed = 5;
    // Update is called once per frame
    void Update () {
        if (Input.GetKeyDown(KeyCode.Space) ) { transform.position += Vector3.up * moveSpeed; }
    }

鼠标命令

 鼠标3个键 分别为0,1,2分别表示左、右、中3个键

Input.GetMouseButton 按住鼠标返回True

Input.GetMouseButtonUp 松开鼠标第一帧返回True

Input.GetMouseButtonDown 按下鼠标第一帧返回True

代码范例:

if(Input.GetMouseButton(0)){Debug.Log("按住了鼠标左键");}

Debug.Log(Input.mousePosition); 

注意unity3d焦点区域

获取轴方法GetAxis

Horizontal     键盘水平轴

Vertical     键盘竖直轴

Mouse X     鼠标水平移动距离

using UnityEngine;

public class BallMove : MonoBehaviour {
    // Update is called once per frame
    void Update () {
        Debug.Log(Input.GetAxis("Mouse X"));
    }
}

Mouse Y     鼠标垂直移动距离

Mouse ScrolWheel     获取鼠标滚轮值

Input设置面板

详细设置

描述名称

对应按键

备用按键

抬起按键,值恢复为0的时间

小于此值,计为0(仅用于遥感)

按下按键,值到达+1或-1的时间

同时按下正负键值为0
+-反转 

(hor,0,ver)实现控制8个方向

范例:

using UnityEngine;

public class BallMove : MonoBehaviour {
    public float moveSpeed = 1;
    // Update is called once per frame
    void Update () {
        float hor = Input.GetAxis("Horizontal");
        float ver = Input.GetAxis("Vertical");
        transform.position += new Vector3(hor,0,ver)*Time.deltaTime*moveSpeed;
    }
}

按键方法

Input.GetButton   按住

Input.GetButtonDown   按下

Input.GetButtonUp   抬起

if(Input.GetButton("Fire")){Debug.Log("Fire");}

 控制按键数量 

float mousex=Input.GetAxis("Mouse X");

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值