ToyVisionToyVision

[include “menu”]

The development of hybrid videogames involves the integration
of physical, social and virtual aspects, thus
introducing a new dimension of complexity
to the entertainment applications of the
pre-pervasive computing era.
Hence, it is crucial to be able to quickly prototype
and tweak game rules as well as the involved
user interfaces and interacction devices.
Ullmer, B., and Ishii, H. (2000) Emerging Frameworks for Tangible User Interfaces.
IBM Systems Journal, 39(3), pp. 915-931

V.2.0 (January 2013)

ToyVision. Toolkit for prototiping tangible computer board-games from Javier Marco on Vimeo.

Recent expansion of tabletop devices gives rise to a new generation of physical and social videogames which mix traditional board games with the new possibilities of digitally augmenting the area of interaction with computer image and audio. Most of the tabletop games are based on multitouch interaction in which playing pieces are virtually projected on the surface and players manipulate them dragging their fingers on the table.

Several tabletop devices are not only capable of detecting user fingers and hands, but also have hardware sensors capable of identifying conventional objects placed on the tabletop surface and track users’ manipulations. Thanks to this functionality, hybrid tabletop games based on Tangible Interaction are also feasible. By keeping playing pieces in the player’s physical environment emotional impact of videogame is reinforced and digital technology becomes accessible to other user profiles such as very young children, users with disabilities and the seniors. We have created NIKVision, a tabletop device expecially designed for very young children and children with disabilities, taking benefith of object manipulation with these users.

Design hybrid games based on Tangible Interaction brings new ways of interaction with the digital system by taking benefit of the physical affordances of conventional objects (playing-pieces). However, the building of a functional prototype implies to tackle many technological issues.

Although the tabletop hardware can be used to identify and track objects position on the table surface, other kinds of passive and active interactions may require advanced technical skills such as electronics and hardware programming. This situation brings a breach between the design process and the corresponding implementation tasks, (i.e., between designers and developers) which is hindering designers from freely explore all the Tangible Interaction feasibilities of the physical playing pieces.

To tackle the problem, we have created ToyVision, a software framework aimed to provide an easier development environment for prototyping Hybrid board-games for visual based tabletop devices.

ToyVision is based in the Reactivision framework, adding new functionalities to support passive and active manipulations of playing pieces.

  • Passive manipulations: ToyVision identifies and tracks not only users placing and dragging playing pieces on the table surface, but also more complex manipulations such us combining two or more playing pieces, or manipulate mobile parts of a playing piece.
  • Active manipulations: ToyVision is able to act upon the playing pieces, carrying out physical changes on them that address the senses of the user, such us color changes, sound, or autonomous movements during the game. ToyVision supports the Arduino platform to comunicate embedded electronics with the tabletop system.

Any developement environment can be used to code tabletop games based on the ToyVision framework. You just need to implement an standard TCP-IP socket. Messages coming from the ToyVision framework and coded in XML-compliant text, so yoy just need to parse the XML to extract updated status of any playing piece manipulated on the tabletop surface.

ToyVision binaries are supported only for Microsoft Windows systems; althought we provide the source code, so it should be possible to compile it in other systems such as MAC/OS and Linux. Go to the Download section to get and install ToyVision, and go to the Tutorials section to learn to use ToyVision and start creating board-games for tabletops.

ToyVision has been created by Dr. Javier Marco, and the Computer Engineering students:

  • Elisa Ubide
  • Guillermo Navarro
  • Alejandro Enjuanes

[include “menu_esp”]

El desarrollo de videojuegos híbridos supone la integración
de elementos físicos, sociales y virtuales, introduciendo así
una nueva dimensión de complejidad al desarrollo
de aplicaciones de entretenimiento de la era pre-pervasiva.
Por tanto, es crucial ser capaces de prototipar y alterar
rápidamente nuevas reglas de juego, así como los interfaces
de usuario  y dispositivos de interacción implicados.
Ullmer, B., and Ishii, H. (2000) Emerging Frameworks for Tangible User Interfaces.
IBM Systems Journal, 39(3), pp. 915-931

V.2.0 (Enero 2013)

ToyVision. Toolkit for prototiping tangible computer board-games from Javier Marco on Vimeo.
La reciente expansión de los dispositivos tabletop da lugar a una nueva generación de videojuegos físicos y sociales que combinan los tradicionales juegos de tablero con las nuevas posibilidades de aumentar digitalmente el área de interacción con la imagen y audio de ordenador. La mayoría de los juegos de tabletop se basan en la interacción multitáctil en la que las piezas del juego se proyectan virtualmente en la superficie y los jugadores las manipulan arrastrando los dedos sobre el tabletop.

Muchos dispositivos tabletop no son sólo capaces de detectar los dedos y las manos del usuario, sino también tienen sensores capaces de identificar objetos convencionales situados sobre la superficie del tabletop y seguir la trayectoria de las manipulaciones de los usuarios. Gracias a esta funcionalidad, los juegos híbridos de tabletop basados en la Interacción Tangible también son posibles. Manteniendo las piezas de juego en el entorno físico del jugador se refuerza el impacto emocional del videojuego y la tecnología digital se vuelve accesible para otros perfiles de usuario como niños muy pequeños, usuarios con discapacidad y personas mayores. Hemos creado NIKVision, un dispositivo tabletop especialmente diseñado para niños muy pequeños y niños con discapacidad, aprovechando la manipulación de objetos con estos usuarios.

El diseño de juegos híbridos basados en la Interacción Tangible trae consigo nuevas maneras de interacción con el sistema digital aprovechando las “affordances” de los objetos convencionales (piezas de juego). Sin embargo, la construcción de un prototipo funcional implica hacer frente a muchos problemas tecnológicos.

Aunque el hardware tabletop se puede usar para identificar y rastrear la posición de los objetos en la superficie del tablero, otros tipos de interacciones pasivas y activas pueden requerir conocimientos técnicos avanzados, tales como la electrónica y la programación de hardware. Esta situación abre una brecha entre el proceso de diseño y las correspondientes tareas de implementación (es decir, entre diseñadores y desarrolladores), que está obstaculizando a los diseñadores la exploración libre de todas las posibilidades de la Interacción Tangible de las piezas físicas de juego.

Para hacer frente al problema, hemos creado ToyVision, un framework de software dirigido a proveer un entorno de desarrollo más fácil para el prototipado de juegos de tablero híbridos para dispositivos tabletop visuales.

ToyVision se basa en el framework de Reactivision, añadiendo nuevas funcionalidades para soportar las manipulaciones activas y pasivas de las piezas de juego.

  • Manipulaciones pasivas: ToyVision identifica y rastrea no sólo la ubicación y el arrastre de las piezas de juego sobre la superficie del tablero, sino también manipulaciones más complejas como la combinación de dos o más piezas, o la manipulación de partes móviles de una pieza de juego.
  • Manipulaciones activas: ToyVision es capaz de actuar sobre las piezas de juego, llevando a cabo cambios físicos sobre ellos que “direccionen” los sentidos del usuario, como cambios de color, sonido, o movimientos autónomos durante el juego. ToyVision soporta la plataforma Arduino para comunicar la electrónica incorporada con el sistema tabletop.

Puede usarse cualquier entorno de desarrollo para codificar los juegos del tabletop basados en el framework de ToyVision.  Sólo es necesario implementar un socket TCP_IP estándar. Los mensajes proceden del framework de ToyVision y están codificados en XML compatible, por lo que sólo se necesita analizar el XML para extraer el estado actualizado de cada pieza de juego manipulada en la superficie del tabletop.

“Los binarios de ToyVision” sólo son soportados por sistemas Microsoft Windows; aunque proveemos el código fuente, por lo que debería ser posible compilar en otros sistemas como MAC / OS y Linux. Accede a la sección de Descarga para obtener e instalar ToyVision, y visita la sección de Tutoriales para aprender a usar ToyVision y empezar a crear juegos de tablero para tabletops.

ToyVision ha sido creado por el Dr. Javier Marco, y los estudiantes de Ingeniería Informática:

  • Elisa Ubide
  • Guillermo Navarro
  • Alejandro Enjuanes

ToyVision is aimed to easy the prototyping og computer augmented board-games. It provides with tools to upgrade any conventional playing piece in a control in an hybrid computer game. Toyvision supports passive playing pieces (manipulated by players) as well as active playing pieces (manipulated by the computer system) through the Arduino board (www.arduino.cc)

Tabletop devices based on difusse illumination (http://nuigroup.com/go/lite), are able to detect and track objects on their surface; thus, it is tecnically possible to create computer board-games that use physical playing pieces. However, at this moment, there are not many proposals of this kind of hybrid videogames. The reason relies in the intrinsic difficulty of developing this games, cause complex algorimts and electronics have to be implemented in order to detect and track playing pieces’ manipulations.

ToyVision lowers the threshold of designing and developing hybrid computer board-games, by offering high processed data of event straight related with playing pieces status during the game.

downloadtoyvision

ADOBE AIR

TOYVision tools and the games developed with it require Adobe Air player instaled in your computer.

TOYVision binaries are compiled to MS Windows 32 bits. However, using the source files and projects, it should be possible to compile the TOYVision tools for other O.S. (such us Apple I/OS)

ToyVision is based on the Reactivision frameworl (http://reactivision.sourceforge.net/), adding new functionalities for blob recognition and Arduino support.  Previous users of the Reactivision toolkit will not find any difference of use in TOYVision framework. Indeed, they just have to launch the framework application, as framework parameters will be automatically configured to detect each playing piece modeled using the TOYVision GUI.

3. TOYVision Widget Layer: This is a new Adobe Action Script 3 class that gives access to all the data needed to recover updated status of each playing piece during the game activity. Provided with this Widget Layer, developers just have to worry about game feedback on the table surface, as they will receive high abstract events of any change in the playing pieces on the table. Games created with TOYVision Widget layer must be created as Adobe AIR projects under any Action Script 3 development environment. The TOYVision Complete package you have downloaded  includes an Adobe Flash CS5 and CS5.5 project ready to be used to create new games. Also, there are some game samples with complete source code that you can use and modify to learn how to create your games using the TOYVision Widget Layer.

Second and last thing you have to learn, is that TOYVision clasifies every playing piece in four diferent categories, and you need to take this into account when designing your own games:

SIMPLE TOKENS:

chips Simple Tokens are the most common playing pieces in board games: checkers, marbles, chips… Players arrange a limited amount of playing pieces on the board according to game rules (e.g. Checkers, Ludo, Stairs and Ladders, Roulette…) In general, Simple Tokens can be physically described as small flat cylindrical pieces, all identical with the exception of the colour used to distinguish the piece of each player, or to give different values (money, points…). Usually, most board games need a lot of Simple Tokens to be played, but grouped in few categories (Checkers only uses black and white pieces, Ludo uses four colors…).

This video shows you how to use Simple Tokens in TOYVision:

NAMED TOKENS:

cardsOther kind of playing pieces get from game rules a very specific role and unique name, which are perceived by the player through their physical appearance. A classic example is the Chess game: the Tower piece has a different appearance and rules than the Pawn. It is possible to have more than one instance of a kind of Named Token in a game (Chess has four Towers and sixteen Pawns), or to have unique instances of each playing piece (in card games, each card is unique in the game, and has a unique name such as Ace of Diamond, Three of Spade …). A Named Token physically identifies the player it belongs to (usually by colour) and the role it has in the game.

This video shows you how to use Named Tokens in TOYVision:



CONSTRAINT TOKENS:

trivialA Constraint Token can be described as a playing piece that acts as a physical constraint of a set of smaller Simple Tokens. The bigger piece can be moved in the game board as any other playing piece, but with the manipulation of the Simple Tokens associated with it, the Constraint Token gets new meanings. For example, the playing piece of the Trivial Pursuit game is composed of six triangular small pieces (Simple Tokens) which can be placed inside a bigger circular piece (Constraint Token) which represents the progress of each player during the game. In this particular case, handling of the playing piece is based on associating (placing/removing) Simple Tokens inside a Constraint Token. Other playing pieces require more complex manipulations, for example, in the Roulette game, players spin a little marble (Simple Token) inside a circular plate (Constraint Token); in this case the playing piece is based on manipulating (moving/rotating) a Simple Token inside the Constraint Token.

This video shows you how to use Associative Constraint Tokens in TOYVision:

And this video shows how to use Manipulative Constraint Tokens in TOYVision:

DEFORMABLE TOKENS:

clay

Finally, there are other playing pieces which do not have a constant shape, as they change with the manipulations of the player, as they are made of malleable materials, such us clay, cardboard, cloth… In a table, players can use these materials for creating new shapes and by combining them, new structures are created.

This video shows you how to use Deformable Tokens in TOYVision:

El objetivo de ToyVision es facilitar el prototipado del juegos de tablero aumentados digitalmente. Ofrece al desarrollador de un conjunto de herramientas para convertir cualquier pieza de juego convencional en un control de un videojuego híbrido. Toyvision permite crear piezas de juego pasivas (solo manipuladas por los jugadores) y activas (manipuladas por el sistema informático), gracias al controlador Arduino (www.arduino.cc).

Los dispositivos tabletop basados en la técnica de iluminación difusa(http://nuigroup.com/go/lite) son capaces de detectar e identificar objetos colocados en su superficie, con lo que es técnicamente posible crear juegos de ordenador que usen juguetes físicos. Sin embargo, hasta el momento, no hay muchas propuestas de este tipo de videojuegos híbridos. La razón reside en la intrínseca dificultad de desarrollar este tipo de juegos, ya que los programadores tienen que implementar complejos algorítmos para detectar con fiabilidad y robusted cada pieza de juego manipulada sobre la mesa.

TOYVision ha sido creado para ayudar en la creación de juegos tangibles aumentados digitalmente en un dispositivo tabletop, ofreciendo a los desarrolladores con información altamente procesada de toda pieza de juego colocada y manipulada por los jugadores y sencillas herramientas para adapta cualquier pieza al juego. Los desarrolladores no necesitan manipular datos en bruto del hardware del dispositivo, sino información directamente entendible y referida a la pieza de jugo, así como un estado completo actualizado de dicha pieza.

downloadtoyvision

bannertoyvision1

ADOBE AIR

Las herramientas de TOYVision y los juegos desarrollados con ellas requieren tener instalado el Player de Adobe AIR.

Los binarios de TOYVision has sido compilados para MS Windows 32 bits. Sin embargo, usando los códigos fuente incluidos no deberías tener problemas para compilarlos bajo otros sistemas operativos (como Apple iOS)

Toyvision está basado en el Framework Reactivision (http://reactivision.sourceforge.net/), añadiendo reconocimiento de blobs y soporte para Arduino. Usuarios del FrameWork Reactivision no van a encontrar diferencia de uso en el FrameWork Reactivision. De hecho, solo tienen que preocuparse de ejecutar el framework, ya que previamente todos los parametros de configuración necesarios ya habrán sido generados por el TOYVision GUI.

3. TOYVision Widget Layer: Se trata de una nueva clase Adobe Action Scipt 3 que permite el acceso a todos los datos necesarios para obtener un completo estado del juego sobre la superficie del tabletop. Gracias a esta Widget Layer, los desarrolladores simplemente tendrán que implementar el feedback del juego, ya que van a recibir eventos altamente procesados de cualquier cambio en las piezas de juego en el momento que estos se produzcan. Los juegos creados con estas clase, deben ser generados como proyectos Adobe AIR bajo entornos de desarrollo Action Script 3. Un proyecto ya preparado para Adobe Flash CS 5.5 ha sido incluido en el paquete de descarga de Toyvision. Tambien se incluyen para descarga algunos ejemplos de juegos con su codigo Action Script 3 completo.

La segunda y última cosa que necesitas aprender sobre TOYVision es la clasificacion que realiza de cada pieza de juego involucrada en el juego. Para crear juegos con TOYVision, necesitaras establecer cada pieza en una de estas cuatro categorías:

SIMPLE TOKENS:

chipsSimple Tokens son las piezas más comunes en los juegos de tablero: las damas, parchís, tres en raya, ruleta…). En general, los Simple Tokens se pueden describirf ísicamente como pequeñas piezas circulares, identicas entre sí con la excepción del color usados para distinguir a cada jugador o darles un calor (dinero, puntos…). Normalmente, los juegos usan muchas de estas piezas para ser jugados, pero están agrupadas en muy pocas categorías (dos en las damas, cuatro en el parchís…).

Este video muestra como trata TOYVision los simple Tokens:

NAMED TOKENS:

cards

Otro tipo de piezas obtienen de las reglas del juego un rol muy específico y un nombre particular, el cual es percivido por los jugadores por su apariencia física. Unejemplo clásico son las piezas del ajedrez: la torre tiene un aspecto y movimientos distintos que el peón. Es psoble que existan mas de una copia de la fichas para un determinado nombre de pieza (el ajedrez tiene cuatro torres, y dieciseis peones), pero es más normal que solo exista una (como en los juegos de cartas). Un Named Token se identifica físicamente a cada jugador al que pertenece (generalmente por el color), y por su función en el juego.

Este video muestra cómo se usan los Named Tokens en TOYVision:



CONSTRAINT TOKENS:

trivial

Un Constraint Token se podría describir como una pieza de juego que actúa como una restricción física de una pieza más pequeña (Simple Token). La pieza más grande se puede mover con libertad por el tablero de juego, mientras que la más pequeña tiene restricciones que añaden significado al Constraint Token. Por ejemplo, la pieza de juego del Trivial Pursuit se compone de seis piezas triangulares (o quesitos) que se colocan dentro de la pieza cilíndrica mayor (Constraint Token) para representar el progreso del cada jugador en la partida. En este caso concreto, la manipulación de los simple tokens esta limitada a poner o quitar dentro de la pieza grande (Associative). En tros tipos de piezas de juego, por ejemplo, la ruleta, los jugadores pueden girar una bolita (Simple Token) dentro de un plato cilcular (Constraint Token). En este caso la manipulación del simple tken esta limitada a girar la bola dentro de los límes del plato (manipulative)

Este vídeo muestra cómo se usan los Associative Constraint Tokens en TOYVision:

y este vídeo muestra cómo se usan los Manipulative Constraint Tokens en TOYVision:

DEFORMABLE TOKENS:

clay

Por último, hay otras piezas que no mantienen una forma constante, dado que el jugador la cambia con sus manipulaciones por estar hechas de material maleable, como la paltilina, la tecla, el cartón… En una mesa, los jugadores pueden usar estos materiales en juegos de construcción, creando nuevas formas, estructuras…

Este video muestra como usar Deformable Tokens en TOYVision:

One thought on “ToyVisionToyVision

Comments are closed.