domingo, 4 de mayo de 2008

Wiimote

Ya creo que todo el mundo debe saber cómo es el wiimote, igual lo resumo. Lo que importa es que tiene algunos botones por ahí, pero principalmente que tiene un acelerómetro que permite detectar movimiento y rotaciones en los tres ejes, y que tiene una cámara infrarroja para leer la posición de una sensor bar y así poder usarlo para “apuntar”. Es inalámbrico y se comunica con el Nintendo Wii por Bluetooth.Filosofía detrás del wiimote

En la página oficial de Nintendo hay una extensa entrevista con los creadores del Nintendo Wii acerca de la consola:

http://www.nintendo.com/wii/what/iwataasks/volume-1/part-1

Y en particular sobre el Wiimote aquí:

http://www.nintendo.com/wii/what/iwataasks/volume-2/part-1

Básicamente dicen que Nintendo quería hacer un sistema que sea de bajo costo y con una interfaz que puedan utilizar las personas y no sólo los jugadores hardcore (no es que los hardcore no sean personas, hay algunos que sí son).
Teniendo la experiencia del Nintendo DS con su pantalla táctil que fue un rotundo éxito, y con juegos de interfaz alternativa ganando terreno (Donkey Konga, Guitar Hero y el Wario Ware twisted! que tiene un acelerómetro), arriesgaron a fabricar lo que hoy es el wiimote… Y les fue bien.


Proyectos que usan el wiimote

Además de ser un éxito en ventas, el wiimote ha sido un éxito en la casa de un tal Johnny Lee, quién hizo unos proyectos más que interesantes:

http://www.cs.cmu.edu/~johnny/projects/wii/


Implementación

Para utilizar el wiimote con mi PC me bajé una API open source llamada wiiuse, que permite leer los datos del acelerómetro, botones, usar la vibración, leer la cámara infrarroja, etc.
Está para lenguaje C++ y para java (wiiusej):

http://www.wiiuse.net/

http://code.google.com/p/wiiusej/

En poco tiempo voy a empezar a hacer pruebas utilizando estas APIs en processing y en open frameworks.


Reflexión sobre el Wiimote

Wiimote = Simpleza
La evolución de los joysticks venía por mal camino; íbamos a terminar sosteniendo un aparato de 25 botones y cuatro o cinco palanquitas diferentes. Por suerte Nintendo optó por un control que no sólo simplifica la interfaz para el usuario, sino que permite nuevas y revolucionaras posibilidades de interacción.
Ahora, en la mayoría de casos un joystick normal nos daría más precisión que un wiimote. Por ejemplo en un juego de tenis convencional por lo general el usuario utiliza un botón para pegarle a la pelota, o digamos, un botón para el disparo común y otro para pegarle por arriba. La dirección de tiro se indica con la palanca del joystick, y la potencia con el tiempo que se mantiene presionado el botón.
En el tenis de wii en cambio no se necesita ningún botón, ni se necesita palanca para indicar la dirección ni potencia del tiro. El jugador usa el wiimote como una raqueta de tenis y el personaje le pega como el jugador espera.
Por más que, en principio, el tiro puede no salir exactamente como uno piensa, la idea que uno tiene de cómo se usa la interfaz es mucho más simple y directa que la del joystick.
El joystick da más precisión a cambio de usar un modelo psicológico más complejo y difícil de entender.
No sé, yo prefiero el wiimote para un juego de tenis frente a un joystick normal, pero… no por eso vamos a abusar… o sea, veamos el caso del nuevo Mortal Kombat:
¿Por qué usar el wiimote para jugar al Mortal Kombat Armageddon?
Seguramente debe haber una razón comercial; alguien que quería mostrar que se puede jugar a lo que sea con el wiimote. Pero, ¿esto hace al juego más práctico y simple como en el caso del tenis? No, para nada. Lo hace menos preciso, eso sí. La forma de jugar al Mortal Kombat Armageddon no se simplifica con el wiimote, de hecho se hace más compleja. O sea, lo que antes se hacía con un movimiento de joystick más un botón, ahora se hace dejando apretado el botón B, haciendo un gesture con el wiimote y soltando el botón B. Esto suena interesante y todo, y puede ser divertido de probar, pero en serio, no tiene sentido.
No es por desmerecer al tenis, pero cabe destacar que los combates a muerte no son tan simples como éste deporte, y talvez no sea la mejor idea tratar de hacerlos funcionar con una interfaz como la del wiimote.
O sea, la raqueta de tenis es algo natural para una persona, la mayoría de gente sabe que movimiento hacer cuando se le viene la pelota encima. Ahora… la fatality de Scorpion no es algo que mucha gente esté acostumbrada a realizar en la vida cotidiana y creo que de ahí viene la confusión.
Por suerte el juego tiene la opción para jugar con el joystick común, para que nadie salga herido.

En fin, el potencial que tiene el wiimote se puede usar para adaptar muchas cosas que ya existían como en el caso del tenis o de los juegos de carreras, pero puede ser un error tratar de adaptar una interfaz muy compleja a este nuevo paradigma.
Lo mejor es que el wiimote permite explorar nuevas formas de interacción como se puede apreciar en varios de los microgames de Wario Ware. Pero hay que tener un poco de criterio también, y no tratar de hacer funcionar el Mortal Kombat o la tostadora con el wiimote porque puede ser una insensatez.