Событие при нажатии на клавиши или кнопки мыши
1-ый способ
Выполнить код при нажатии указанной клавиши, можно через метод Input.GetKey()
.
Input.GetKey(KeyCode.W) // Нажата клавиша «W» Input.GetKey(KeyCode.Space) // Нажат пробел
2-ой способ
Чтобы выполнить действие при нажатии на клавишу, для текущего объекта надо создать скрипт, в котором создать переменные типом KeyCode
.
public class ComponentName : MonoBehaviour { public KeyCode moveLeft; public KeyCode moveRight; void Update() {} }
В настройках компонента появятся два параметра, через которые можно привязать клавиши к переменным.
Теперь можно выполнять код при нажатии на указанную клавишу через метод Input.GetKey()
.
public class ComponentName : MonoBehaviour { public KeyCode moveRight; public KeyCode moveLeft; void Update() { if (Input.GetKey(moveRight)) { transform.position = transform.position + new Vector3(0.20f, 0, 0); } else if (Input.GetKey(moveLeft)) { transform.position = transform.position + new Vector3(-0.20f, 0, 0); } } }
2-ой способ
Управление для клавиш клавиатуры и геймпада также можно настроить в Edit → Project Settings → Input Manager.
Параметр Name указывает имя клавиши, по которой можно будет обратиться через код.
В параметре Positive Button указывается, через какую клавишу будет происходить событие. В параметр Alt Positive Button указывается альтеративная клавиша (например для клавиши перемещения можно использовать клавишу «w» и стрелку вверх).
Пример использования клавиши через код:
if (Input.GetButtonDown("Fire1")) { // код при нажатии на клавишу с именем «Fire1» }