// TITLE: Rolling
// Adam Tindale 2010
int count = 0;
import gifAnimation.*;
GifMaker gifExport;
void setup(){
gifExport = new GifMaker(this, "blackorwhite.gif");
gifExport.setRepeat(0);
frameRate(5);
noStroke();
}
void draw(){
background(0);
rect(((count-10)/10.0) * width,0, width, height);
gifExport.setDelay(5);
gifExport.addFrame();
if (count == 19){
gifExport.finish();
exit();
}
count = ++count % 20;
}
This is an animated GIF. Click on it to watch the animation.
I am on a Residency with Jordan Tate in Banff to work on my visual
competency and I am teaching Jordan about programming and digital media.
Jordan's first assignment is to make 10 animated gifs in response to
other work. Here is part one. This is called 4'33". I recently saw
Rauschenberg's "White Paintings" at SFMOMA and I was really taken. I
love minimalism. I found out through some reading that Cage didn't
really go for the full 4'33" until he saw these. I like black so I made
a black animated gif with various degrees of black. I did this because
Cage discovered that you can't ever experience silence, there is always
some noise and jitter.
// TITLE: 4'33"
// Adam Tindale 2010
// http://www.emvergeoning.com/?p=1095
import gifAnimation.*;
GifMaker gifExport;
PImage mygif;
color[] c = new color [3];
int i = 0;
void setup(){
gifExport = new GifMaker(this, "export.gif");
gifExport.setRepeat(0);
c[0] = color(0);
c[1] = color(3);
c[2] = color(5);
}
void draw(){
background(c[i]);
gifExport.setDelay(1);
gifExport.addFrame();
if (i == 2){
gifExport.finish();
exit();
}
i = ++i % 3;
}
In preparing for mono.mono//stereo I searched for something that would
make images that I wanted. I started with Processing but once I started
adding some effects it got way too slow so I found Quartz Composer. I
ended up using that for the piece. That introduced a lot of
communication problems. OSC is not implemented well and there are a lot
of resets and bogus reports. The same data sent to any other program
looks just fine. I am looking to leave Quartz and move to another
language. What I can't find is a good language for drawing in 3D with a
list of arbitrary coordinates.
So, I have been thinking about going back to Processing or checking out
Field. Field has a lot of nice bridges to Max/MSP and some incredible
hybrid code/gui functions. It also binds with python nicely so I could
integrate marsyas and some other systems pretty easily. Could this be
the glue I am looking for?
I am still searching. I have some time coming up and I think I will play
with it a bit and report back.
So, more explorations with Max 4 Live are underway. It is interesting
under there. I ran into a problem where I automated some parameters and
then skipped to another place in my Live set. When I pressed play the
parameters of my max patch were a little whacky and I need to bang them
to get fresh updated statuses. Loadbang doesn't work since it wasn't an
instantiation of a device.
I found the solution. The live_set has a parameter that is observable
and will tell you if Live is playing. Guess what it is called? That's
right - is_playing. So I have a screenshot of this snippet of a Max 4
Live patch that you can check out an use to send a bang when Live is set
to play.
Enjoy!
← newer
::
older →