Dibujos Generativos

Lenguaje Computacional Cero (o LC0) es un nuevo módulo dentro de la asignatura del Taller de Diseño para el Primer Año. Dentro de este ramo se introduce a los alumnos a la programación gráfica como un modo de acceder al lenguaje de la abstracción desde el rigor de los algoritmos matemáticos. Este curso es una introducción a la computación como una herramienta de expresión plástica, donde el objetivo es el diseño pero el medio es el software. Los estudiantes se familiarizarán con algoritmos básicos, geometría computacional y simulación cinemática.

La alfabetización digital, entendida en la mayoría de los casos como la capacidación para el uso de programas, sólo resuleve la mitad del problema: el saber leer. Saber escribir, tiene implicancias mucho más profundas, porque significa ser capaz de expresar y llevar adelante las ideas propias. Para un diseñador este distingo es fundamental ya que debe comprender el lenguaje desde ambos lados para poder construir y diseñar; y el medio digital permite esa maleabilidad.

En este curso usamos el entorno de desarrollo Processing para construir dibujos generados a partir de máquinas autónomatas. Estos proyectos tienen una versión impresa en PDF y un corto de video, ambos generados completamente a partir de código. Todos los videos están disponibles en nuestro grupo de vimeo y los programas en http://www.ead.pucv.cl/processing/2008.


Genesis_proyecto de Serrano Daniel en Vimeo.


reflejo con fondo blanco de Daniela Labra en Vimeo.


El Efecto de la Luz y El Viento de Nicolás Abarca en Vimeo.


Ramificaciones de Fernanda Ladrón de Guevara en Vimeo.

Marcianitos

Como este sitio trata de la doble página traigo esta aplicación: Issuu.

Mis amigos más fundamentalistas dirán que es pura nostalgia por la página, otros dirán que se trata de otra aplicación que declara la supremacía absoluta de Internet sobre los otros medios de comunicación; porque es capaz de contenerlos a todos.

En fin, si esta discusión no te interesa, sólo baja el código para hacer tus propios marcianitos.

  1. float)height - (2 * margen []
  2. float)width - (2 * margen []

Crono-anamorfosis

secuencia Nuestra comprensión del tiempo es discreta, es decir concebimos la suceción de “instantes” como el único modo de reconstruir el flujo del tiempo. Cada vez que grabamos un video, recolectamos una gran catidad de fotogramas que luego son reproducidos —normalmente— a la misma velocidad con la que fueron captados. Tenemos entonces un solido o volumen de fotogramas cuyo espesor corresponde al tiempo. Siempre que reproducimos el video, elegimos verlo en sucesivos cortes transversales perpendiculares al tiempo, tratando de volver a esos instantes fotográficos. Pero ¿podemos verlo de otro modo? ¿qué ocurriría si elegimos ver este sólido de tiempo haciendo un corte con una inclinación ligeramente distinta? secuencia inclinada con anamorfosis temporal Por ejemplo, imaginemos que el programa que captura video va almacenando un buffer de fotogramas que tiene un espesor igual al alto en pixeles del fotograma (aquí en el esquema: y = z). Es decir, si tengo un fotograma de 320 pixeles de ancho por 240 pixeles de alto, tengo un buffer de 240 fotogramas de espesor. Entonces el fotograma actual puede construirse a partir de la diagonal de este volumen: la primera línea es la actual, la segunda es de 1 fotograma atrás, la tercera de 2 fotogramas atras, y así hasta completar el alto de la imágen. TimeTwist de Herbert Spencer en Vimeo.

Código

El código presentado a continuación fue generado para captura en tiempo real en el entorno processing. Se debe tener en consideración que el programa requiere mucha memoria RAM para ejecutarse por lo que se hace necesario modificar las preferencias de processing (ojalá más de 1GB). Esto dependerá del tamaño de captura. Normalmente las cámaras para videoconferencias integradas admiten un máximo de 640 x 480. Este código no está optimizado, ojo. Si hacen algo con el código pongan el link para ver los experimentos en los comentarios de más abajo ¡Suerte! Bajar: timetwist.pde

Referencias