Comunidad de diseño web y desarrollo en internet

6 tips críticos en desarrollo de videojuegos para Leap Motion

El Leap Motion es un dispositivo de control gestual que se conecta vía USB a cualquier computadora y reconoce los movimientos de las manos y los dedos, traduciendo esos gestos y movimientos en órdenes concretas, de forma tal que permite interactuar con la máquina utilizando sólo las manos mediante una Interfaz Natural de Usuario (NUI).



El referido dispositivo fue diseñado por la empresa californiana Leap Motion y salió a la venta el 22 de julio del año pasado. Los componentes fundamentales del hardware son dos cámaras y tres LEDs infrarrojos que detectan el movimiento de las manos y los dedos con un alcance máximo de un metro de distancia y una precisión espacial de 0.01 milímetros.

Aunque el Leap Motion fue concebido como un dispositivo de control gestual para reemplazar al mouse y el teclado, permitiendo interacturar con el sistema operativo de forma natural, utilizando sólo las manos, las perspectivas del Leap Motion en el ámbito de los videojuegos son bastante grandes, aunque también involucra nuevos desafíos para los desarrolladores, puesto que resulta complejo generar mecánicas de juego que incorporen el flujo natural de las extremidades del cuerpo humano, en roles que satisfagan las expectativas de los jugadores y reglas que sean entendidas fácilmente por los mismos.



Este artículo presenta diversos aspectos que deben atenderse al momento de desarrollar un videojuego con el dispositivo de control gestual Leap Motion. Corresponde a una presentación sucinta de aquellos aspectos críticos que he identificado durante el desarrollo de nuestro videojuego: The Rainbow Machine. Dentro de los aspectos críticos asociados al desarrollo de videojuegos con Leap Motion podemos mencionar los siguientes:

Definición de los comandos de control del juego



Un aspecto de diseño que involucra al Gameplay y la Interfaz es la definición de los controles de juego. Recordemos que el Gameplay constituye la mecánica general del juego con sus reglas, metas y objetivos y la Interfaz representa los componentes que permiten al jugador interactuar con el modo del juego definido en el Gameplay. La Interfaz tiene una influencia directa en la forma en la que percibimos el Gameplay. Ambos elementos representan aspectos cruciales del desarrollo de videojuegos puesto que están relacionados y afectan directamente la experiencia de juego.

El Leap Motion concede muchas libertades para controlar un videojuego. De acuerdo con uno de los ingenieros de la empresa, el dispositivo tiene 25 grados de libertad por cada mano, esto se refiere a la cantidad de movimientos posibles. Por consiguiente, dota de mayor complejidad el proceso de implementación de las ideas concebidas para el Gameplay y la Interfaz.

Los periféricos convencionales como: el mouse, el gamepad, el joystick, entre otros, contienen una cantidad específica de botones a los que se asigna acciones concretas. En contraste, el Leap Motion continuamente recopila una gran cantidad de información que el desarrollador debe analizar para determinar cuáles de los datos que le proporciona el Leap Motion son útiles a sus propósitos, por ejemplo, la posición de inicio de un dedo, la posición final, la velocidad de desplazamiento, gestos, entre otros, con el objeto de identificar posteriormente la semántica de los mismos. En otras palabras, el desafío de los desarrolladores de videojuegos, en lo que concierne a la definición de los comandos de control, consiste en dotar de sentido a los datos obtenidos directamente del dispositivo, para traducirlos en órdenes concretas, en función de las acciones pertinentes a su Gameplay.

Resulta conveniente resaltar que la selección de los comandos de control puede influir en la experiencia de juego positiva o negativamente, por esta razón es importante dedicar especial atención a esta fase del desarrollo.

Aprovechamiento de las características del dispositivo



Otro de los desafíos del desarrollo de videojuegos para Leap Motion, relacionado con el control, lo constituye el aprovechamiento de la Interfaz Natural de Usuario del dispositivo. Idear o adaptar mecanismos de juego para este tipo de tecnología implica desligarse de los mecanismos de control habituales. Por ejemplo, en nuestro videojuego The Rainbow Machine, un juego de puzzle en el que hay que estirar y posicionar una barra para dirigir una bola hacia un cofre, se utilizan las dos manos libremente para jugar. Esta experiencia de juego es imposible de recrear con periféricos convencionales.

La empresa Leap Motion sugiere enfáticamente el uso exclusivo de su dispositivo para el manejo de videojuegos y aplicaciones. Esto quiere decir que, por ejemplo, en lugar de utilizar el teclado para introducir alguna información requerida, como el nombre del jugador, será necesario la implementación de un teclado virtual u otro mecanismo relacionado con las herramientas de control gestual. Sin embargo, resulta pertinente destacar que la representación virtual de periféricos de control no es siempre lo más indicado. Por ejemplo, se desaprovecharían las funcionalidades del dispositivo si en el desarrollo de un gameplay cualquiera se empleara un D-Pad o cruceta para controlar el juego en lugar de utilizar el movimiento natural de las manos.

Dificultades para explicar el Gameplay



Otro aspecto crítico importante relacionado con el Gameplay y la Interfaz es la explicación de la mecánica del juego y los controles de movimiento. Resulta importante especificar claramente en primera instancia todos los aspectos que el jugador debe entender y conocer para disfrutar plenamente del juego. El tutorial es la sección que contiene la información sobre la mecánica del juego y los controles. Por lo general, es la parte que quieren omitir los jugadores impacientes.

Dado que el Leap Motion brinda muchas libertades de control resulta difícil explicar con palabras cómo jugar. Un usuario puede tener muchas dudas sobre el funcionamiento del sistema. Por ejemplo puede preguntarse: ¿cómo realizar correctamente un gesto?, ¿en qué dirección debe mover la mano?, ¿a qué velocidad debe mover la mano?. Todas estas interrogantes deben ser respondidas en el tutorial puesto que de lo contrario el jugador se frustrará al no entender cómo ejecutar las acciones básicas del juego. También resulta conveniente que el tutorial sea conciso y dinámico, de forma tal que permita al jugador aprender sobre la marcha. No es recomendable extenderse en los tutoriales.

Gestos y movimientos para la navegación por menús



El objetivo que se persigue al diseñar una Interfaz de Usuario es permitir que un jugador pueda interactuar con la computadora o sistema de forma sencilla, precisa e intuitiva. Las particularidades de control que brinda el Leap Motion permiten la implementación de dos tipos de elementos en las Interfaces de navegación: Botones Convencionales y Escenas. Por ejemplo, podemos incluir en el videojuego un Menú compuesto por una serie de botones, como es habitual, y hacer click en ellos usando algún gesto o movimiento. Otra opción que podemos implementar con este dispositivo es mostrar la información en Escenas independientes y acceder a ellas mediante algún gesto o movimiento. Este diseño sin botones se ajusta más a la naturaleza del dispositivo pero requiere instrucciones precisas sobre cuáles son las Escenas disponibles y cómo acceder y navegar por cada Escena.

Para ver la historia de nuestro videojuego The Rainbow Machine sólo tienes que barrer el dedo en el aire, de un lado a otro, y será el equivalente de hacer click en el botón Continuar. Barriendo el dedo en el aire vas pasando por las diferentes Escenas que conforman la historia del juego.

Decisiones de entrada e interrupción de lectura de datos



Otro factor a definir cuando desarrollas para Leap Motion son las acciones que ocurrirán cuando el dispositivo detecta las manos y cuando deja de detectarlas. El jugador empieza a interactuar con el sistema cuando posiciona sus extremidades en el rango de alcance del dispositivo y cesa cuando se aleja de dicho rango. En tal sentido, el desarrollador deberá tomar decisiones respecto a las situaciones que afectan el sistema. Por ejemplo, debe considerar que el jugador puede retirar las manos rápidamente fuera del alcance del dispositivo y volver a introducirlas. ¿Cómo reaccionará el juego en presencia de esos casos límite?.

Para ejemplificar el proceso supongamos que el jugador conduce un avatar por la pantalla a través de un camino y retira las manos, ¿qué ocurre?. Hay que tomar decisiones respecto a eso: ¿el avatar se mantiene completamente visible en el lado de la pantalla por donde retiró las manos?, ¿el avatar sale de la pantalla junto con las manos del jugador?, ¿al detectar un movimiento brusco el avatar se detiene?, ¿si el jugador retira las manos el juego se pone en pausa?, son algunas de las cosas que hay que decidir al diseñar el juego.

Por otro lado, también será necesario tomar decisiones cuando el dispositivo detecte nuevamente las extremidades. Por ejemplo, el desarrollador deberá definir si el avatar se moverá hacia donde están posicionadas las manos del jugador o si el avatar permanecerá inmóvil hasta que el jugador no posicione las manos sobre él.

Esta toma de decisiones resulta tan crítica para la experiencia de juego que la empresa Leap Motion agregó funciones específicas para estas detecciones en las versiones más recientes del SDK.

Falta de unificación de controles



Por último, otro de los aspectos críticos inherentes a la mecánica de juego y la Interfaz, lo representa la falta de unificación de los comandos de control. Como sabemos, cuando desarrollamos para el Leap Motion tenemos total libertad para asociar gestos y movimientos a acciones concretas del Gameplay y la Interfaz. Esto puede dificultar el entendimiento del uso de los controles por parte de los usuarios, por cuanto no existe una forma estándar para llevar a cabo tareas que son rutinarias y comunes entre videojuegos.

Puede ocurrir que, en un determinado videojuego, un usuario acceda a las opciones del menú haciendo el gesto de barrido de un dedo en el aire, y en otro videojuego este gesto no sirva para el mismo propósito. En contraste, con los periféricos convencionales el entendimiento de la Interfaz por parte de los jugadores es más rápido porque los comandos de control son más limitados y tienen una semántica estándar. Por ejemplo, un jugador principiante puede aprender rápidamente que al pulsar un botón del Mouse accede a las opciones del Menú e incluso puede iniciar una partida. Ese conocimiento es aplicable a otros videojuegos de ese estilo controlados con ese periférico.

Estos son algunos de los aspectos críticos que como desarrollador deberás afrontar al crear alguna App o videojuego para el Leap Motion o cualquier otro periférico similar. Espero que esta información les sea de ayuda.

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate