Introducción a la entrada: MRTK2
El sistema de entrada de MRTK le permite:
- Consumir entradas de una variedad de orígenes de entrada, como 6 controladores DOF, manos articuladas o voz, a través de eventos de entrada.
- Defina acciones abstractas, como Select o Menu, y asócielas a diferentes entradas.
- Configure punteros conectados a controladores para controlar los componentes de la interfaz de usuario a través de eventos de foco y puntero.
Los proveedores de datos de entrada (Administrador de dispositivos) generan entradas. Cada proveedor corresponde a una fuente determinada de entrada: Open VR, Windows Mixed Reality (WMR), Unity Joystick, Windows Speech, etc. Los proveedores se agregan al proyecto a través del perfil de proveedores de servicios registrados en el componente Mixed Reality Toolkit y generarán eventos de entrada automáticamente cuando los orígenes de entrada correspondientes estén disponibles (por ejemplo, cuando se detecta un controlador WMR o un controlador para juegos conectado).
Las acciones de entrada son abstracciones sobre entradas sin procesar diseñadas para ayudar a aislar la lógica de la aplicación de los orígenes de entrada específicos que producen una entrada. Puede ser útil, por ejemplo, definir una acción Seleccionar y asignarla al botón izquierdo del mouse, un botón en un controlador para juegos y un desencadenador en un controlador DOF 6. A continuación, puede hacer que la lógica de la aplicación escuche los eventos de acción Seleccionar entrada en lugar de tener en cuenta todas las distintas entradas que pueden generarla. Las acciones de entrada se definen en el perfil de acciones de entrada, que se encuentra en el perfil del sistema de entrada en el componente Mixed Reality Toolkit.
Los proveedores de entrada crean controladores cuando se detectan y destruyen los dispositivos de entrada cuando se pierden o se desconectan. El proveedor de entrada WMR, por ejemplo, creará controladores WMR para 6 dispositivos DOF y controladores de mano articulados WMR para manos articuladas . Las entradas del controlador se pueden asignar a acciones de entrada a través del perfil de asignación de controladores, dentro del perfil del sistema de entrada. Los eventos de entrada generados por los controladores incluirán la acción de entrada asociada, si existe.
Los controladores pueden tener punteros adjuntos a ellos que consultan la escena para determinar el objeto de juego con foco y generar eventos de puntero en ella. Por ejemplo, nuestro puntero de línea realiza una difusión de rayos en la escena mediante la posición del controlador para calcular el origen y la dirección del rayo. Los punteros creados para cada controlador se configuran en el perfil de puntero, en el perfil del sistema de entrada.
eventos.Aunque puede controlar los eventos de entrada directamente en los componentes de la interfaz de usuario, se recomienda usar eventos de puntero para mantener la implementación independiente del dispositivo.
MRTK también proporciona varios métodos de conveniencia para consultar el estado de entrada directamente de forma independiente del dispositivo. Consulte Acceso al estado de entrada en MRTK para obtener más detalles.