iOS 7, revolución interior: mandos de juego

COMPARTIR 0 TWITTEAR

El lanzamiento de iOS 7 supone una verdadera revolución en cuanto a posibilidades para los desarrolladores y por extensión para fabricantes y usuarios. Apple ha conseguido crear una de las plataformas de videojuegos de mayor éxito del mundo y la llegada de mandos de control, que extiendan las posibilidades de estos dentro de iPad, iPhone o iPod Touch no es sino un paso más hacia el tan rumoreado Apple TV con SDK de terceros y soporte de juegos. Descubre en qué consiste todo esto.

iOS 7, la revolución interior

Sin duda una de las grandes sorpresas de la pasada Conferencia Mundial de Desarrolladores de Apple, donde se presentó iOS 7, fue la importancia que la gente de Cupertino ha dado a los videojuegos para ir un paso más allá: una librería de desarrollo para crearlos, Sprite Kit (de la que hablamos no hace mucho) y la otra es la incorporación de mandos de control que complementen o sustituyan al táctil. Es coherente pensar que lo táctil funciona muy bien para algunos conceptos pero para otros no termina de funcionar (los pads virtuales sobre la pantalla, a mi personalmente, me parecen un gran fallo de concepto).

Los tipos de mando

Apple establece una serie de normas para poner el sello “MFi” a los mandos de control de juego que se desarrollen. Normas básicas como que el mando tenga consistencia de fabricación, que sea fácil de llevar, que la tasa de refresco de pulsaciones sea alta y que los botones sean sensibles a la presión y de sensación firme. Así mismo, los pad del mando (la cruceta, para entendernos) ha de tener un mínimo tamaño que cubra todas las posibles orientaciones, sin zonas muertas en su movimiento ni pérdidas que supongan que alguna posición del mando no devuelva datos: solo la posición neutra ha de no enviar datos al dispositivo.

Los mandos pueden ser de tres tipos:

  • El mando de estructura ajustada donde el dispositivo encaja dentro del mismo, que ha de disponer de botones X, Y, A y B, un pad de control y botones superiores L y R.
  • El mando de estructura ajustada extendido, donde el dispositivo también encaja dentro pero esta vez se añade cuatro botones superiores L1, R1, L2 y R2 que actúen de disparadores, además de la incorporación de dos sticks analógicos, uno a cada lado.
  • El mando independiente, es similar en cuanto a características al ajustado extendido, pero como su nombre indica, es solamente un mando aislado. La principal novedad es la inclusión de una fila de cuatro pequeñas luces LED, que indiquen qué mando es este dentro del juego (el jugador 1, 2, 3 o 4).

Además, el mando independiente y el extendido tienen una curiosa incorporación: un botón de pausa que nos permita parar el juego. Si queréis ver un ejemplo, MOGA ya ha presentado su primer mando, en el formato de estructura ajustada extendida.

Controlador de Moga para iPhone 5

Cómo funciona internamente

Lo que Apple ha hecho ha sido crear una clase única GCController, que gestiona los mandos de manera transparente al desarrollador. Este no ha de preocuparse de nada más que preguntar si hay o no mandos conectados y controlar los eventos que se generen con cada pulsación. De esta forma, da igual los mandos que se hagan en el futuro, que un mismo desarrollo siempre funcionará con estos.

Podemos saber qué y cuántos mandos están conectados a nuestro dispositivo, obtener notificaciones cuando uno entra en funcionamiento o se desconecta o simplemente buscarlos en un momento concreto para facilitar su integración en el juego. Los datos a los que tiene acceso el desarrollador desde el momento que un mando está presente en el sistema son los de su pad, los botones, los disparadores o botones superiores y la posición de los pequeños sticks analógicos. Además podemos saber el tipo de mando que es (entre los 3 disponibles), quién es su fabricante y el índice de jugador que tiene dicho mando (para permitir juegos multijugador en un mismo dispositivo).

Todo esto se controla con una matriz, donde se devuelven tantas posiciones como mandos haya conectados. Si dicha matriz no tiene elementos, lógicamente es que no hay mandos conectados ni operativos. Para controlar si conectamos o no un mando mientras el juego está arrancado, podemos declarar unas notificaciones que se dispararán cuando un nuevo mando esté disponible para el sistema. De igual forma, desde el mismo juego, se pueden generar ventanas de sistema para proporcionar la posibilidad de unir un mando desde el propio juego, sin necesidad de salir a Ajustes.

Controlador iOS 7

A la hora de leer los datos del mando, es importante notar, como hemos dicho antes, que los botones del mando han de ser sensibles a la presión, es decir, el sistema debe poder controlar si hemos pulsado flojo o fuerte y con qué intensidad. De esta forma, cuando preguntamos por los botones en un momento concreto se nos dice si está o no pulsado, y un valor de intensidad decimal de 0 a 1. En cuanto a la dirección de los sticks analógicos, preguntadas las posiciones arriba, abajo, izquierda o derecha, se nos dará un valor decimal entre -1 y 1 que indicará la posición exacta del mando. Con la cruceta o pad, los valores se devuelven en función del eje de la X o la Y. En el caso de los disparadores solo podemos preguntar si han sido o no pulsados.

Los mandos están preparados por sistema para funcionar a un refresco de 1/60, de forma que se obtienen datos del mismo por el sistema 60 veces por segundo, coincidiendo con el número de ciclos que Sprite Kit tiene para dibujar la pantalla. Es decir, que funciona a 60 frames por segundo.

Grandes posibilidades

Sin duda, los mandos son el complemento perfecto para iOS y amplían el horizonte de posibilidades del mismo. Y además, hay otra cosa importante: el futuro Apple TV. Estos mandos se conectan por Bluetooth y nada impide que Apple, con el ecosistema que dispone, de el salto al televisor.

Mi teoría es que tenemos a la vuelta de la esquina un nuevo Apple TV por un precio aproximado de 149$, con procesador A7 de 64 bits, soporte 1080p y OpenGL ES 3.0, que integrará la conectividad de estos mandos, control de la interface desde cualquier dispositivo iOS (incluso con Siri) y que dispondrá una SDK para desarrollo de software de terceros. Esto abrirá las puertas a multitud de nuevas posibilidades de juego, de interacción y de apps que harán que este nuevo Apple TV sea el objeto de mayor deseo para millones de personas. El cambio está a la vuelta de la esquina.

Archivado en Apple TV, Logitech, Mandos, MFi, MOGA, Sprite Kit
COMPARTIR 0 TWITTEAR

Comentarios (10)

Usa tu cuenta de Facebook para dejar tu opinión.

Publica tu opinión usando tu cuenta de Facebook.

¿Te ha gustado? ¡No te pierdas nada más!

follow us in feedly

Nuestros blogs