Adam's Blog
×

Rolling

Tuesday August 03, 2010
Category: Processing
animated gif
// 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;
}

SELFPORTRAIT (_loading)

Tuesday August 03, 2010
Category: Uncategorized

This is an animated GIF. Click on it to watch the animation.

Animated GIF

Banff Residency

Monday August 02, 2010
Category: Uncategorized

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.


animated gif
// 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;
}

New Languages

Wednesday May 05, 2010
Category: Uncategorized

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.

Is Live Playing?

Tuesday March 30, 2010
Category: Max 4 Live

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!

Screenshot of software.

←   newer :: older   →