Ejemplos de control : Tutorial 03 : Conexiones

Enero 15, 2008
01.gif

En Pd, la mayoría de los objetos llevan a cabo sus funciones cuando reciben mensajes por la entrada que está más a la izquierda (caliente). Las otras entradas (frías) son para almacenar valores que pueden modificar la acción. Aquí, el objeto ‘+’ sólo funciona cuando cambia la entrada de la izquierda. Si ajustas la caja de número de la derecha el resultado no cambia, pero se almacena la cifra para que al ajustar el número recibido por la izquierda se sume a este.

02.gif

En Pd hay que pensar en qué orden va a recibir un objeto sus mensajes. Si una salida está conectada a más de una entrada hay que definir qué entrada recibirá primero la información. Este ejemplo está construido de tal manera que la caja de la izquierda recibe la información en el orden correcto, de derecha a izquierda. El ejemplo malo no recibe la información en el orden correcto porque las entradas están conectadas al revés. A simple vista ambos ejemplos parecen iguales, pero en el bueno se conectó antes la entrada derecha y en el malo la izquierda.

03.gif

Hay un objeto que permite controlar el orden de los mensajes. ‘trigger’ coge cualquier número de argumentos ‘bang’ y ‘float’ (además de otros) y copia sus entradas en sus salidas de la forma definida, de derecha a izquierda. Si lo conectas a dos entradas sin cruzar los cables conseguirás el efecto deseado. Si cruzas los cables los resultados se almacenarán en la memoria.


El orden de los mensajes

Septiembre 7, 2007

Lo lógico sería pensar que los mensajes enviados desde los parches se ejecutan siempre de izquierda a derecha, pero la verdad es que no es cierto, el orden en el que se ejecutan las órdenes depende del orden en el que se hicieron las conexiones al crear el parche. Por ejemplo, en esta imagen se ven dos parches sencillos que parecen exactamente iguales:

pd_orden.jpg

Sin embargo, el parche de la izquierda imprime: “A: 6 A: 70 A: 431″ y el de la derecha “A: 6 A: 431 A:70″, simplemente porque ese fue el orden en el que se hicieron las conexiones.