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.
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.
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.
Mi pregunta es si todos los mandos anteriores a la salida de IOS 7 también funcionaran de esta forma. Yo concretamente tengo un mando ipega, y todavía no lo he probado demasiado, pero tenía esa duda.
Hola Oriotna,
Lamento informarte que no son compatibles. Ten presente que los mandos han de recibir la certificación MFi (Made for iPhone-iPad-iPod Touch) de la propia Apple no solo en cuanto a construcción y prestaciones, sino en cuanto a qué protocolos de paridad y funcionamiento han de tener con el sistema. Ten presente, que el mando iPega solo funciona con aquellos juegos que lo soportan.
Un saludo
como se llama el juego que aparece en el mando???
[…] Además con esta nueva actualización, los controles táctiles para manejar el juego, se han configurado para el nuevo sistema iOS 7. Asphalt 8: Airbone es uno, dentro de una docena de juegos, que ya ofrecen esta modificación en sus controles los cuales están desarrollados por compañías como Moga y Logitech. […]
[…] Además con esta nueva actualización, los controles táctiles para manejar el juego, se han configurado para el nuevo sistema iOS 7. Asphalt 8: Airbone es uno, dentro de una docena de juegos, que ya ofrecen esta modificación en sus controles los cuales están desarrollados por compañías como Moga y Logitech. […]
[…] iPad. El joystick es invisible y los botones están en la parte derecha. Incluye soporte para los mandos o controladores de iOS 7 que aún no hemos visto de forma oficial por ningún lado: ideal para conectarlo al Apple TV y al […]
[…] iPad. El joystick es invisible y los botones están en la parte derecha. Incluye soporte para los mandos o controladores de iOS 7 que aún no hemos visto de forma oficial por ningún lado: ideal para conectarlo al Apple TV y al […]
[…] la llegada del renovado iOS 7, pudimos ver como la empresa californiana abría un nuevo camino hacia los usuarios más jugones de […]
[…] pequeños pasos: AirPlay, el framework Sprite Kit para desarrollo de juegos, soporte de mandos de juego MFi, el nuevo chip A7 de 64 bits, trailers de vídeo en el App Store… todos pasos que parece que […]
[…] el lanzamiento de iOS 7, una de las mayores revoluciones para los desarrolladores en el WWDC fue el empujón que Apple le dio a los videojuegos. Lanzó una librería de desarrollo, Sprite Kit, y añadió la posibilidad de utilizar mandos de […]
[…] hablado largo y tendido sobre lo que supuso la aparición de iOS 7 para los videojuegos. La llegada de este ha permitido el uso de controladores en los dispositivos con los que podremos […]
[…] embargo, Apple, que cada vez está viendo más claro que tiene futuro en este terreno, decidió incluir en iOS 7 el soporte para controladores, permitiendo así que tanto los desarrolladores de juegos como los fabricantes de accesorios dieran […]
[…] la llegada del renovado iOS 7, pudimos ver como la empresa californiana abría un nuevo camino hacia los usuarios más jugones de […]