Unity API Input的使用

acceleration

重力感应

gyro

陀螺仪

anyKey

任何键按中(包括鼠标)

anyKeyDown

任何键按下(包括鼠标)

GetKeyXXX的使用

检测键盘按键

GetKey

按中,一直触发

GetKeyDown

按下

GetKeyUp

抬起

if (Input.GetKeyDown("left shift"))//按下
{
    print("left shift");
}
if (Input.GetKeyDown(KeyCode.Space))//按下
{
    print("KeyDOwn");
}
if (Input.GetKeyUp(KeyCode.Space))//抬起
{
    print("KeyUp");
}
if (Input.GetKey(KeyCode.Space))//按中,一直触发
{
    print("Key");
}

鼠标按键事件的监测

检测鼠标按键

GetMouseButton

鼠标按中,一直触发

0:左,1:右,2:中

GetMouseButtonDown

鼠标按下

0:左,1:右,2:中

GetMouseButtonUp

鼠标抬起

0:左,1:右,2:中

if (Input.GetMouseButton(0)) //鼠标左键按中
    Debug.Log("Pressed left click.");

if (Input.GetMouseButton(1)) //鼠标右键按中
    Debug.Log("Pressed right click.");

if (Input.GetMouseButton(2)) //鼠标中键按中
Debug.Log("Pressed middle click.");

if (Input.GetMouseButtonDown(0)) //鼠标左键按下
    Debug.Log("Pressed left click.");

if (Input.GetMouseButtonDown(1)) //鼠标右键按下
    Debug.Log("Pressed right click.");

if (Input.GetMouseButtonDown(2)) //鼠标中键按下
Debug.Log("Pressed middle click.");

if (Input.GetMouseButtonUp(0)) //鼠标左键抬起
    Debug.Log("Pressed left click.");

if (Input.GetMouseButtonUp(1)) //鼠标右键抬起
    Debug.Log("Pressed right click.");

if (Input.GetMouseButtonUp(2)) //鼠标中键抬起
    Debug.Log("Pressed middle click.");

GetButtonXXX相关事件监测 

定义虚拟按键:Edit -> Project Settings -> Input

Positive Button 和Alt Positive Button任意触发就表示这个虚拟按键触发了

if (Input.GetButtonDown("Fire1"))
{
    print("Fire1 Down");
}

Keys:

The names of keys follow this convention:

  • Normal keys: “a”, “b”, “c” …
  • Number keys: “1”, “2”, “3”, …
  • Arrow keys: “up”, “down”, “left”, “right”
  • Keypad keys: “[1]”, “[2]”, “[3]”, “[+]”, “[equals]”
  • Modifier keys: “right shift”, “left shift”, “right ctrl”, “left ctrl”, “right alt”, “left alt”, “right cmd”, “left cmd”
  • Mouse Buttons: “mouse 0”, “mouse 1”, “mouse 2”, …
  • Joystick Buttons (from any joystick): “joystick button 0”, “joystick button 1”, “joystick button 2”, …
  • Joystick Buttons (from a specific joystick): “joystick 1 button 0”, “joystick 1 button 1”, “joystick 2 button 0”, …
  • Special keys: “backspace”, “tab”, “return”, “escape”, “space”, “delete”, “enter”, “insert”, “home”, “end”, “page up”, “page down”
  • Function keys: “f1”, “f2”, “f3”, …

使用GetAxis得到轴的值的变化来控制移动

public class API11Input : MonoBehaviour {
    public Transform cube;
    void Update()
    {
        //Vector3.right * Time.deltaTime 表示1秒向右移动1米
        cube.Translate(Vector3.right * Time.deltaTime * Input.GetAxis("Horizontal") * 10);
        cube.Translate(Vector3.right * Time.deltaTime * Input.GetAxisRaw("Horizontal") * 10);
    }
}

屏幕坐标系和鼠标的坐标

mousePosition

鼠标在屏幕中的像素位置,z轴为0(屏幕左下角为原点)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值