Unity键位输入及Input类
Posted -831
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity键位输入及Input类相关的知识,希望对你有一定的参考价值。
一、Unity的基本输入事件(最常用):
1 . 获得键盘
Input.GetKey(KeyCode.A)
Input.GetKeyDown(KeyCode.A)
Input.GetKeyUp(KeyCode.A)
2.获得鼠标信息
Input.mousePosition // 鼠标位置
Input.GetMouseButton 获取按钮
3.轴输入
Input.GetAxis 获取轴
根据坐标轴名称返回虚拟坐标系中的值。
使用控制器和键盘输入时此值范围在-1到1之间;
1、Input类中的常用属性
属性名
类型
属性类型
含义
anyKey
bool
get
获取任意键按住
anyKeyDown
bool
get;
获取任意键按下
mousePosition
Vector3
get;
获取鼠标移动的坐标
2、Input类中常用属性
(1)、GetKey(KeyCode key)
方法类型:静态。
参数:key—键盘上的某个键。
返回值:bool—当键盘上某个键被一直按住的时候,其返回值为true,否则为false。
含义:检测键盘上的某个键是否被一直按住,如果该键一直按住,其返回值为true,否则为false。
重载方法:GetKey(string name)
(2)、GetKeyDown(KeyCodekey)
方法类型:静态。
参数:key—键盘上的某个键。
返回值:bool—当键盘上某个键被按下的时候,其返回值为true,否则为false。
含义:检测键盘上的某个键是否被按下,如果该键被按下,其返回值为true,否则为false。
重载方法:GetKeyDown(string name)
(3)、GetKeyUp(KeyCodekey)
方法类型:静态。
参数:key—键盘上的某个键。
返回值:bool—当键盘上某个键按下之后抬起的时候,其返回值为true,否则为false。
含义:检测键盘上的某个键是否被按下之后抬起,如果该键被按下之后抬起,其返回值为true,否则为false。
重载方法:GetKeyUp (string name)
(4)、GetMouseButtonDown(intbutton)
方法类型:静态。
参数:button—表示鼠标上的键,0:表示鼠标左键,1:表示鼠标右键,2表示鼠标中键,3:表示鼠标上键,4:表示鼠标下键(其中3和4件不经常用,因为有的鼠标上没有这两个键)。
返回值:bool—当鼠标上某个键被按下之后,其返回值为true,否则为false。
含义:检测鼠标上的某个键是否被按下,如果该键被按下,其返回值为true,否则为false。
(5)、GetAxis(stringaxisName)
方法类型:静态。
参数:axisName—轴向,Horizontal:表示水平方向,其值从-1到1之间变化,当A键被按下的时候其在水平方向上的向量为0-1(取不到0),当D键被按下的时候其在水平方向上的向量为-1-0(取不到0),当A键和D键都没有被按下的时候,其水平方向上的向量为0;Vertical:表示竖直方向,其值从-1到1之间的变化,当W键被按下的时候其在竖直方向上的向量为0-1(取不到0),当S键被按下的时候其在竖直方向上的向量为-1-0(取不到0),当S键和W键都没有被按下的时候,其竖直方向上的向量为0。
返回值:float—按下设定的某个键之后,表示变化的数值,从-1到1之间变化。
含义:检测键盘上某个按键被一直按住的时候,其在设定的方向上的变化。
鼠标点击:
Input.GetMouseButtonDown(0) //鼠标左键按下
Input.GetMouseButtonDown(1) //鼠标右键按下
Input.GetMouseButtonUp(0) //鼠标左键抬起
Input.GetMouseButtonUp(1) //鼠标右键抬起
键盘事件:
Input.GetKeyDown(KeyCode.键值) //键盘按下
Input.GetKeyUp(KeyCode.键值) //键盘抬起
常用的键值:
KeyCode.大写字母A-Z //字母键
KeyCode.UpArrow
KeyCode.DownArrow
KeyCode.LeftArrow
KeyCode.RightArrow
KeyCode.Return //回车
KeyCode.Escape //Esc返回
KeyCode.Space //空格
KeyCode.LeftControl
KeyCode.RightControl
KeyCode.LeftShift
KeyCode.RightShift
KeyCode.Tab
KeyCode.Delete
KeyCode.Backspace
二、获取键盘或者各电视遥控器键值用于输入事件适配
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class KeyCode : MonoBehaviour
//显示键值信息的UI文本组件
public Text keycodeText;
//只能在OnGUI内获取键值
void OnGUI()
if (Input.anyKeyDown)
Event e = Event.current;
if (e.isKey)
keycodeText.text ="按下的键值:" + e.keyCode.ToString();
Unity键值表:
/** 鼠标键值 **/
Mouse0 鼠标左键
Mouse1 鼠标右键
Mouse2 鼠标中键
Mouse3 鼠标第3个按键
Mouse4 鼠标第4个按键
Mouse5 鼠标第5个按键
Mouse6 鼠标第6个按键
/** 键盘键值 **/
//方向键
UpArrow 方向键上
DownArrow 方向键下
RightArrow 方向键右
LeftArrow 方向键左
//F功能键
F1 功能键F1
F2 功能键F2
F3 功能键F3
F4 功能键F4
F5 功能键F5
F6 功能键F6
F7 功能键F7
F8 功能键F8
F9 功能键F9
F10 功能键F10
F11 功能键F11
F12 功能键F12
F13 功能键F13
F14 功能键F14
F15 功能键F15
//数字键
Alpha0 按键0
Alpha1 按键1
Alpha2 按键2
Alpha3 按键3
Alpha4 按键4
Alpha5 按键5
Alpha6 按键6
Alpha7 按键7
Alpha8 按键7
Alpha9 按键9
//字母键
A ‘a’键
B ‘b’键
C ‘c’键
D ‘d’键
E ‘e’键
F ‘f’键
G ‘g’键
H ‘h’键
I ‘i’键
J ‘j’键
K ‘k’键
L ‘l’键
M ‘m’键
N ‘n’键
O ‘o’键
P ‘p’键
Q ‘q’键
R ‘r’键
S ‘s’键
T ‘t’键
U ‘u’键
V ‘v’键
W ‘w’键
X ‘x’键
Y ‘y’键
Z ‘z’键
//功能键
Backspace 退格键
Delete Delete键
Tab Tab键
Clear Clear键
Return 回车键
Pause 暂停键
Escape ESC键
Space 空格键
Numlock Numlock键
Capslock 大小写锁定键
ScrollLockScroll Lock键
RightShift 右上档键
LeftShift 左上档键
RightControl 右Ctrl键
LeftControl 左Ctrl键
RightAlt 右Alt键
LeftAlt 左Alt键
LeftApple 左Apple键
LeftWindows 左Windows键
RightApple 右Apple键
RightWindows 右Windows键
AltGr Alt Gr键
Help Help键
Print Print键
SysReq Sys Req键
Break Break键
Insert Insert键
Home Home键
End End键
PageUp PageUp键
PageDown PageDown键
//符号键
Exclaim ‘!’键
DoubleQuote 双引号键
Hash Hash键
Dollar ‘$’键
Ampersand Ampersand键
Quote 单引号键
LeftParen 左括号键
RightParen 右括号键
Asterisk ‘ * ’键
Plus ‘ + ’键
Comma ‘ , ’键
Minus ‘ - ’键
Period ‘ . ’键
Slash ‘ / ’键
Colon ‘ : ’键
Semicolon ‘ ; ’键
Less ‘ < ‘键
Equals ‘ = ‘键
Greater ‘ > ‘键
Question ‘ ? ’键
At ‘@’键
LeftBracket ‘ [ ‘键
Backslash ‘ \ ’键
RightBracket ‘ ] ’键
Caret ‘ ^ ’键
Underscore ‘ _ ’键
BackQuote ‘ ` ’键
//小键盘
Keypad0 小键盘0
Keypad1 小键盘1
Keypad2 小键盘2
Keypad3 小键盘3
Keypad4 小键盘4
Keypad5 小键盘5
Keypad6 小键盘6
Keypad7 小键盘7
Keypad8 小键盘8
Keypad9 小键盘9
KeypadPeriod 小键盘“.”
KeypadDivide 小键盘“/”
KeypadMultiply 小键盘“*”
KeypadMinus 小键盘“-”
KeypadPlus 小键盘“+”
KeypadEnter 小键盘“Enter”
KeypadEquals 小键盘“=”
---------------------
作者:沃斯窃格瓦拉
来源:CSDN
原文:https://blog.csdn.net/t1446242775/article/details/80271709
版权声明:本文为博主原创文章,转载请附上博文链接!
以上是关于Unity键位输入及Input类的主要内容,如果未能解决你的问题,请参考以下文章