Translate

miércoles, 3 de abril de 2013

Introducción


Tincore Driver


Este driver es un componente que se ejecuta a nivel del kernel de un dispositivo, y establece un punto de enlace/comunicación entre el hardware del dispositivo (controles y botones) y el sistema operativo, y su función principal es proveer una interfaz y generación de eventos para ser utilizados por aplicaciones que se ejecutan en Android, principalmente orientado a juegos, ya que su implementación permite disfrutar de estos títulos, ya sean aquellos preparados para trabajar directamente con controles físicos, como para aquellos otros títulos que no poseen una interfaz pensada originalmente para estos controles, y su desarrollo se basa exclusivamente en interacciones con gestos y toques en pantalla (interfaz táctil).

El driver en si, se compone de los siguientes dispositivos que se "conectan" al sistema operativo y que son los siguientes:


  • Dispositivo Teclado
  • Dispositivo Joystick
  • Dispositivo Pantalla Tactil


El driver genera estos dispositivos de tal manera que el sistema entiende que los tiene conectados físicamente, y por tanto trabaja de forma "natural" con ellos.

Además de los dispositivos, hay una serie de "acciones" que pueden generar cada uno de estos dispositivos, y que son los siguientes (listados por dispositivo y tipo)


  • Dispositivo Teclado
    • Key click (pulsación de teclas)
  • Dispositivo Joystick
    • Joystick (evento natural de joystick, como Analógico para los sticks y Botón para los botones)
  • Dispositivo Pantalla Tactil
    • Touch Combined Pad (emulación de D-PAD virtual en pantalla)
    • Touch Split Pad (Emulación de 4 botones separados para el D-PAD, en vez de un único objeto)
    • Touch Pointer (Emulación de toque en pantalla, como si fuese un puntero de ratón, pero con el dedo)
    • Touch Pointer Centering (Como Touch Pointer, pero cuando se suelta el stick, el puntero vuelve al centro)
    • Touch Pointer Circular (Como Touch Pointer Centering, pero cuando el puntero llega al borde, continúa en el lado opuesto del área del Touch)
    • Touch Swipe (Gestos de Swipe)
  • Disabled (Se puede deshabilitar la entrada)


Así, si está trabajando en modo Teclado, el driver envía eventos de teclas (presionar) directamente al sistema y son interpretados como tal, sin necesidad de programas que interpreten señales o "traduzcan" lo que quiere decir el driver.

Del mismo modo, si se trabaja en modo Joystick, el sistema recibe directamente la información que envía el driver, por medio del dispositivo conectado, y que el driver lee directamente de la información del hardware (estado de sticks analógicos, presión de botones, etc)

La pantalla táctil es una interfaz directa entre el driver y el sistema operativo, y recibe eventos directos desde el driver que se traducen en toques en pantalla, gestos, etc. Al no existir la limitante física de los puntos máximos en pantalla que puede soportar el hardware, se pueden enviar tantos puntos y eventos táctiles como el driver necesite, esto significa que si la pantalla está limitada a 5 puntos táctiles simultáneos como máximo, el driver puede enviar 10 o mas sin problemas, por que el sistema si que puede interpretar todos estos puntos, sin necesidad de interactuar directamente con la parte de hardware de lap antalla.

El driver, al no necesitar de "intermediarios" para interactuar con el sistema, ya que se conecta directamente mediante sus dispositivos internos (teclado, joystick, pantalla táctil), gana muchísimo en velocidad, reduciendo considerablemente el lag existente, además de las optimizaciones innatas que pueda tener el driver, y esta es la razón por la que este driver tiene un input-lag tan bajo, que en la práctica es casi inexistente.

Tincore Keymapper


Por su parte, el Keymapper es la herramienta que configura el driver. Gracias a su interfaz, esta herramienta provee una forma simplificada y sencilla de configurar todos los parámetros que necesita el driver para trabajar, además de proveer de otras funcionalidades extra, como son la carga automática de perfiles de aplicación.

La herramienta está diseñada como un editor de perfiles, que le indican al driver como debe interactuar con sus dispositivos. Para trabajar con ella, y de una manera que simplifique el proceso de configuración, existen una serie de perfiles "por defecto" que se presentan en la interfaz, y que son los siguientes:

<NEW TOUCH>
<NEW JOYSTICK>
<NEW KEY>
<RESET TO DEFAULT>

Al seleccionar cualquiera de estos perfiles/plantilla, se establecen las acciones de cada control a un conjunto predefinido específico, y la idea es que a partir de esta plantilla, se configuren los controles de acuerdo a las necesidades del usuario y aplicación/juego correspondiente.

Al aplicar una configuración, el perfil correpondiente se guarda. El keymapper sugiere como nombre de fichero el nombre del programa/módulo que se encuentra cargado en primer plano en Android (que no es el mismo keymapper obviamente), y con esto genera un nombre único por cada aplicación existente en el sistema.

Existe además una opción de Autoperfilado (Autoprofile) que permite cargar automáticamente cada opción existente, dependiendo de la aplicación que se encuentre ejecutando en primer plano. Esta opción resulta especialmente cómoda a la hora de cambiar entre distintas aplicaciones y juegos, ya que evita tener que abrir constantemente la herramienta para seleccionar el perfil adecuado.

No hay comentarios:

Publicar un comentario