Unity入门系列之输入相关Input鼠标键盘输入

注意:输入相关内容是写在Update中的。


目录

1.鼠标在屏幕位置

2.检测鼠标输入

3.检测键盘输入

4.检测默认轴输入


1.鼠标在屏幕位置

屏幕坐标的原点是在屏幕的左下角,往右是X轴方向,往上是Y轴方向。

返回值是Vector3,但是只有x和y有值,z一直是0,是因为屏幕本来就是2D的,不存在z轴。

print(Input.mousePosition);

2.检测鼠标输入

鼠标按下一瞬间进入:0左键   1右键    2中键

只要按下一瞬间进入一次

if(Input.GetMouseButtonDown(0))
{
   print("鼠标左键按下了");
}

鼠标按下相关检测,对于我们来说,比如:

1.可以做子弹发射装置

2.可以控制摄像机转动

鼠标抬起一瞬间进入(比如做一些卡牌游戏)

if(Input.GetMouseButtonUp(0))
{
  print("鼠标左键抬起了");
}

鼠标长按按下和抬起都会进入,按住键不放时就会一直进入。

if(Input.GetMouseButton(1))
{
  print("鼠标右键按下");
}

中键滚动

返回值y    -1往下滚   0没有滚   1往上滚

它的返回值是Vector3的值,我们鼠标中键滚动,会改变其中的y值

print(Input.mouseScrollDelta);

3.检测键盘输入

键盘按下

if(Input.GetKeyDown(KeyCode.W))
{
   print("W键按下");
}

传入字符串的重载

这里传入的字符串不能是大写的,不然会报错。

只能传入小写的字符串

比如说按一个键释放一个技能或者切换武器等操作时使用。

if(Input.GetKeyDown("space"))
{
  print("空格键按下");
}

键盘抬起

if(Input.GetKeyUp(KeyCode.W))
{
  print("W键抬起");
}

键盘长按

if(Input.GetKey(KeyCode.W))
{
  print("W键长按");
}

4.检测默认轴输入

键盘AD按下时,返回-1到1之间的变换,我们可以通过它来控制对象左右移动或者左右旋转。

print(Input.GetAxis("Horizontal"));

键盘SW按下时,返回-1到1之间的变换,得到这个值,就是我们的上下方向,我们可以通过它来控制对象上下移动或者上下旋转。

print(Input.GetAxis("Vertical"));

鼠标横向移动-1到1左  右

print(Input.GetAxis("Mouse X"));

//鼠标竖向移动-1到1上下移动
print(Input.GetAxis("Mouse Y"));

GetAxisRaw方法和GetAxis使用方法相同,只不过它的返回值没有中间值,是三个固定值-1,  0 , 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Nicole Potter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值