U4S1L3——鼠标输入
U4S1L3——鼠标输入
本章代码关键字
1 | Mouse //鼠标类 |
获取当前鼠标设备
需要引用命名空间UnityEngine.InputSystem
新输入系统提供了对应的输入设备类,帮助我们对某一种设备输入进行检测
1 | Mouse mouse = Mouse.current; |
鼠标各键位 按下 抬起 长按
同键盘输入一样,首先要得到某一个按键,通过 鼠标类mouse
对象 点出 各种鼠标按键ButtonControl
对象 来获取,格式如下mouse.___Button
1 | ButtonControl buttonControl; |
鼠标各键位
-
鼠标左键
1
buttonControl = mouse.leftButton;
-
鼠标中键
1
buttonControl = mouse.middleButton;
-
鼠标右键
1
buttonControl = mouse.rightButton;
-
鼠标向前向后键(有侧键的鼠标)
1
2buttonControl = mouse.forwardButton;
buttonControl = mouse.backButton;
鼠标按键按下抬起长按
-
按下
1
2
3
4
5
6
7void Update()
{
if (Mouse.current.leftButton.wasPressedThisFrame)
{
print("鼠标左键按下");
}
} -
抬起
1
2
3
4
5
6
7void Update()
{
if (Mouse.current.leftButton.wasReleasedThisFrame)
{
print("鼠标左键抬起");
}
} -
按住
1
2
3
4
5
6
7void Update()
{
if (Mouse.current.leftButton.isPressed)
{
print("鼠标左键按住");
}
}
鼠标位置相关
-
鼠标当前位置
坐标原点在左下角,坐标以屏幕分辨率为准
1
mouse.position.ReadValue();
-
鼠标两帧之间的一个偏移向量
1
mouse.delta.ReadValue();
-
鼠标中键滚轮的方向向量
1
mouse.scroll.ReadValue();
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!