Presentación del paquete del sistema de entrada
Entorno de verificación
- Windows
-
- Ventanas 11
- Unity Editor
-
- 2020.3.25f1
Acerca del paquete del sistema de entrada
En los primeros días de Unity, usábamos el Administrador de entrada como un mecanismo para recibir información de los usuarios. Sin embargo, en el entorno de la diversificación de las plataformas de juego, el administrador de entrada se ha vuelto obsoleto. Se ha añadido un nuevo mecanismo para gestionar la entrada del usuario: Input Systemu Manager.
A partir de 2022, tanto el nuevo "Paquete del sistema de entrada" como el "Administrador de entrada" para compatibilidad están disponibles. Si tiene un proyecto antiguo, puede usar "Administrador de entrada" tal como está, Creo que hará la transición a un nuevo "paquete de sistema de entrada" en el futuro, por lo que en un nuevo proyecto Utilice el paquete del sistema de entrada.
En esta sección se describe cómo configurarlo.
Instalación de paquetes del sistema de entrada
A partir de Unity Editor 2020.3.25f1, los paquetes del sistema de entrada se administran como paquetes que no se instalan inicialmente. Para instalar el paquete:
Después de crear tu proyecto e iniciar el Editor de Unity, selecciona Window > Package Manager en el menú.
Cuando aparezca la pantalla Administrador de paquetes, seleccione "Unity Registry" del paquete.
Si se desplaza hacia abajo en la lista de la izquierda, hay "Sistema de entrada", así que selecciónelo y haga clic en el botón "Instalar" en la parte inferior derecha.
Cuando esté instalado, se mostrará como instalado, así que cierre el cuadro de diálogo.
Si aparece el siguiente cuadro de diálogo después de instalar el paquete, haga clic en el botón "Sí" para configurar automáticamente el siguiente "Activar paquete del sistema de entrada". En este caso, el Editor de Unity se reiniciará.
This project is using the new input system package but the native platform backends for the new input system are not enabled in the player settngs. This means that no input from native devices will come through.
Do you want to enable the backends? Doing so *RESTART* the editor and will *DISABLE* the old UnityEngine.Input APIs.
Activar el paquete del sistema de entrada
Como acabo de instalar el paquete, tengo un administrador de entrada desactualizado activo en este momento. Cambie esto al paquete del sistema de entrada.
Seleccione Editar > configuración del proyecto en el menú.
Cuando se abra el cuadro de diálogo Configuración del proyecto, seleccione Reproductor en el menú de la izquierda.
En la pestaña ubicada a continuación, seleccione PC, Mac.... Seleccione la pestaña Configuración y expanda Más configuraciones en el grupo en la parte inferior.
Si se desplaza hacia abajo hasta cierto punto, encontrará un elemento llamado "Procesamiento de entrada en uso" en la categoría "Configuración", donde puede seleccionar "Paquete del sistema de entrada (nuevo)". Puede activar ambos por el momento, pero es confuso, por lo que en el caso de un nuevo proyecto, es mejor usar solo el paquete del sistema de entrada.
Después de realizar los cambios, aparecerá el siguiente cuadro de diálogo, así que haga clic en "Aplicar" para reiniciar el Editor de Unity.
¡Eso es todo, ya está!
Acerca del problema de usar el espacio de nombres "UnityEngine.InputSystem" en la entrada de código que resulta en un error
No he ingresado el código en este momento, por lo que no será un error,
Puede recibir un error que indica que el espacio de nombres no existe al intentar usarlo al UnityEngine.InputSystem
escribir código (por ejemplo, Visual Studio).
Por ejemplo, si crea un script antes de instalar el "Paquete del sistema de entrada".
Esto se debe a que el proyecto UnityEngine.InputSystem
no tiene una referencia a .
Para resolver esto, haga lo siguiente:
Seleccione Editar > preferencias en el menú.
Seleccione Herramientas externas en el menú de la izquierda y haga clic en el botón Regenerar archivos de proyecto.
Al hacerlo, Visual Studio UnityEngine.InputSystem
agrega a la referencia.
Además, el código está libre de errores.
Cambiar la aceptación de la entrada del usuario en la interfaz de usuario a un paquete del sistema de entrada
Este campo no es relevante si no usas la interfaz de usuario de Unity, como campos de entrada o menús desplegables, y debe ignorarse.
Cuando coloca un campo de entrada, un menú desplegable, etc. en una vista, se crea automáticamente un lienzo y el objeto de interfaz de usuario se coloca allí. Al mismo tiempo, se crea un objeto llamado "EventSystem". Este es un objeto que administra lo que sucede cuando se realiza alguna entrada en la interfaz de usuario.
Este EventSystem se ejecuta inicialmente con un administrador de entradas más antiguo. Si solo está habilitado el paquete del sistema de entrada, la interfaz de usuario no funcionará tal como está, por lo que debe cambiar al paquete del sistema de entrada.
Para realizar cambios, primero seleccione EventSystem.
A continuación, se muestra una advertencia en el "Módulo de entrada independiente" en el inspector.
Haga clic en el botón Reemplazar con InputSystemUIInputModule para reemplazar el módulo de entrada independiente por el módulo de entrada de interfaz de usuario del sistema de entrada.
La interfaz de usuario de tu juego ahora debería aceptar la entrada correctamente.