Unity soporta teclado, joystick y gamepad input.
Se pueden crear botones y ejes virtuales en el Input Manager, y los usuarios finales pueden configurar su input de teclado en un dialogo de configuración bonito en la pantalla.
Usted puede configurar joysticks, gamepads, teclado, y mouse, luego acceder a todos con una interfaz simple de scripting. Típicamente usted utiliza los ejes y botones para pretender que es un control de consola. Alternativamente, se puede acceder a las teclas en el teclado.
Desde los scripts, todos los ejes virtuales son accedidos por su nombre.
Cada proyecto tiene el siguiente eje input por defecto cuando es creado:
Si usted quiere agregar unos nuevos ejes virtuales vaya al menú Edit->Project Settings->Input. Aquí usted puede también cambiar los ajustes para cada eje.
Usted asigna cada eje con dos botones en un joystick, mouse, o teclas del teclado.
Propiedad: | Función: |
---|---|
Name | El nombre del string usado para revisar este eje desde un script. |
Descriptive Name | Nombre de valor positivo mostrado en la pestaña input del dialogo Configuration para construcciones standalone. |
Descriptive Negative Name | Nombre del valor negativo mostrado en la pestaña Input del dialogo Configuration para construcciones standalone. |
Negative Button | El botón usado para empujar el eje en la dirección negativa. |
Positive Button | El botón usado para empujar el eje en la dirección positiva. |
Alt Negative Button | El botón alternativo usado para empujar el eje en la dirección negativa. |
Alt Positive Button | El botón alternativo usado para empujar el eje en la dirección positiva. |
Gravity | Velocidad en unidades por segundo que el eje cae hacia el neutro cuando no hay botones oprimidos. |
Dead | Tamaño de la zona muerta análoga. Todos los valores de dispositivos análogos dentro de este rango resultan el mapa a neutral. |
Sensitivity | Velocidad en unidades por segundo que el eje va a moverse hacia el valor de destino. Esto es solo para dispositivos digitales. |
Snap | Si habilitado, el valor del eje se restablecerá a cero cuando se oprima un botón de la dirección opuesto. |
Invert | Si está habilitado, los Botones Negativos proporcionan un valor positivo y vice-versa. |
Type | El tipo de inputs que controlará este eje. |
Axis | El eje de un dispositivo conectado que controlará este eje. |
Joy Num | El Joystick conectado que controlará este eje. |
Use estos ajustes para ajustar con precisión el aspecto del input. Todos están documentados con tooltips en el Editor también.
Puede consultar el estado actual de un script de esta manera:
value = Input.GetAxis ("Horizontal");
Un eje tiene un valor entre –1 y 1. La posición neutral es 0. Este es el caso del Joystick input y el input del teclado.
No obstante, el delta del mouse(Mouse Delta) y el delta del movimiento de la ventana(Window Shake Delta) son cuánto el mouse o la ventana se movió durante el último cuadro. Esto significa que puede ser mayor que 1 o menor que –1 cuando el usuario mueve el mouse rápidamente.
Es posible crear ejes múltiples con el mismo nombre. Cuando obtenga el input del eje, el eje con el mayor valor absoluto va a ser devuelto. Esto hace que sea posible asignar más de un dispositivo input al nombre de un eje. Por ejemplo, cree un eje para un input de teclado y un eje para un input de joystick con el mismo nombre. Si el usuario está usando el joystick, el input vendrá del joystick, de otra manera el input vendrá del teclado. De esta forma, usted no tendrá que considerar de dónde el input viene cuando escriba scripts.
Para mapear una tecla a un eje, usted necesita ingresar el nombre de la tecla en la propiedad Positive Button o Negative Button en el Inspector.
Los nombres de la tecla siguen esta convención:
Los nombres utilizados para identificar las teclas son los mismo de la interfaz del scripting y el Inspector.
value = Input.GetKey ("a");
Tenga en cuenta que las teclas también son accesibles utilizando el parámetro enum KeyCode.