En nuestra serie sobre la programación creativa exploramos hoy el entorno de programación vvvv, creado en 1998 por Max Wolf y Sebastian Oschatz como una herramienta para la creación de proyectos multimedia. Junto con Sebastian Gregor y Joreg, todos ellos miembros del estudio MESO, decidieron desarrollar su propio software al comprobar que las herramientas comerciales con las que contaban entonces (Opcode Max, Macromedia Director, Flash y otros) no les ofrecían suficiente libertad creativa. Tras un trabajo que se extendió durante cinco años, desarrollaron el entorno de programación que se lanzó en 2002 y posteriormente ha logrado una gran aceptación entre programadores y diseñadores. Como software gratuito (para uso no-comercial), vvvv sigue desarrollándose en base a las aportaciones de una extensa comunidad de usuarios y el vvvv group, que forman los cuatro creadores originales.

El objetivo de Wolf, Oschatz, Gregor y Joreg era poder programar en tiempo real para producir entornos multimedia complejos que pudiesen modificarse por medio de una interfaz gráfica. Este planteamiento hace de vvvv una herramienta ideal para VJs que crean espectáculos en directo, así como para artistas que desarrollan instalaciones interactivas o diseñadores que buscan crear prototipos de producto de manera rápida y efectiva. Entre sus principales características están el permitir trabajar con código a la vez que se visualizan los resultados, pudiendo organizar los diferentes elementos que forman un programa y las relaciones entre sí por medio de una interfaz gráfica. Como otros entornos de programación, vvvv cuenta con librerías y plugins desarrollados por los propios usuarios, que expanden sus posibilidades y facilitan el desarrollo de proyectos sin tener que empezar de cero. Los principales usos de vvvv son la animación 2D y 3D, instalaciones multipantalla (gracias a una técnica denominada boygrouping es posible controlar y sincronizar varios ordenadores desde un ordenador-servidor), motion graphics, vídeo mapping, visualización de datos (a partir de un archivo de base de datos o de datos obtenidos en la Red), informática física (vvvv es compatible con Wii, Leap, Kinect, Oculus Rift, Arduino y otros dispositivos), sonido (si bien admite no llegar al nivel de PureData y MaxMSP) y visión artificial (incluyendo detección de movimiento, rostro, color, gesto, etc.). Las posibilidades de creación que facilita este entorno de programación son inmensas y han sido exploradas por numerosos artistas y diseñadores. Como ejemplo, esta “escultura interactiva” creada por MESO para el Goethe Nationalmuseum en Weimar ofrece una idea de cómo puede crearse una interfaz que trabaja en tiempo real con una base de datos y conecta un display interactivo con una proyección y un sistema de sonido.

Una parte importante del desarrollo y la popularización de vvvv se da en el contexto de la organización NODE Forum for Digital Arts, fundada en 201o en Frankfurt. Esta organización sin ánimo de lucro crea eventos tales como talleres de programación, exposiciones, performances y debates que tienen lugar en un festival bienal que, durante una semana, reúne a profesionales, estudiantes y artistas de todo el mundo. En NODE se presentan proyectos artísticos y se organizan talleres de programación visual y métodos de programación creativa, además de otras iniciativas con diferentes empresas colaboradoras. Entre estas últimas, cabe destacar la convocatoria abierta a artistas que ofrece la empresa FRM, creadora del marco de arte digital FRAMED*, un dispositivo compuesto por una pantalla de 24 pulgadas con un ordenador, cámara y sensores integrados pensado para colgarse en la pared como si se tratara de un cuadro y que puede mostrar una amplia variedad de obras digitales creadas con tecnologías como OpenFrameworks, Processing, vvvv, Cinder o HTML5, entre otras. FRM promueve de esta manera la creación de obras de arte con vvvv exclusivamente para un dispositivo diseñado para acogerlas.

 

Primeros pasos con vvvv

Lo primero que vemos al abrir vvvv es una ventana en la que no hay absolutamente nada: esta ventana se denomina patch (la programación en este entorno se conoce como patching) y es el espacio en el que se colocarán los nodos, que son los elementos con los que se construye un determinado programa. Para acceder al menú de nodos, hay que hacer clic con el botón central del ratón y buscar el nodo con el que se quiere trabajar. Cada nodo genera, procesa o envía información y lo hace por medio de una serie de entradas (inlets) y salidas (outlets). En estas entradas o salidas se crean enlaces con otros nodos para ir construyendo el programa. Un tipo de cajas particular son las IOBoxes, que permiten introducir valores que posteriormente se comunican con un nodo para que éste procese o envíe la información recibida.

Para visualizar los resultados del programa que se está creando con los diferentes nodos, es preciso introducir un nodo denominado Renderer, que lleva a cabo el renderizado en tiempo real del código que se está escribiendo al conectar las cajas. En el ejemplo que se ve más abajo (extraído de los video tutoriales disponibles en la web de vvvv), vemos la ventana patch y bajo ésta otra ventana que muestra el renderizado. Esta ventana está representada en la parte superior por el nodo Renderer, cuya entrada (inlet) está conectada a una serie de nodos y cajas que determinan el texto que se muestra en la renderización, su color y forma, así como un movimiento circular generado por un nodo que establece su posición y orientación en los ejes x e y, alimentado por un nodo LFO que es el que activa la animación al generar nuevos valores constantemente.

Este sencillo ejemplo ofrece una idea general de los principios básicos de vvvv: la programación basada en nodos que se conectan entre sí, la circulación de los datos de un nodo a otro en función de si los enlaces se establecen en sus inlets o outlets, la visualización de los resultados por medio de un renderer y finalmente la posibilidad de modificar los datos y ver cómo los cambios afectan a la visualización en tiempo real. El sitio web de vvvv cuenta con un tutorial básico en español además de varios video tutoriales en inglés y numerosos recursos más.

Share: