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(屏幕左下角为原点) |