LookingOutwards04-jooheek

The Creatures of Prometheus – Generative visualisation of Beethoven’s ballet with Houdini

By: Simon Russell

The visual outcome the algorithm creates

This project shows the relationship between audio and visuals through computation. Specifically, it creates visuals for a Beethoven ballet. Through an algorithm, it detects the pitch and amplitude of the music and makes different shapes and colors for different musical notes. It also detects how high or low the note is compared to the previous note, and uses this to determine how high the shapes are in the composition.

I found this project interesting because it shows how computation can create a connection between audio and visuals, which creates both music and visual art at the same time. It shows that music doesn’t always have to be heard and art doesn’t always have to be seen.

The screenshots of the program at work.
Program at work

However, what’s interesting is that he did not get the algorithm perfectly. The first four bars of the computation is incorrect, but he states he just wanted to get it finished and out rather than being perfect. He states, “It was quite a fun one because I plugged in the data, hit render and then didn’t really know what would come out. Usually I’d hand animate every last detail but this one is essentially generative.” It’s fun to know that this project was just a fun experiment of someone rather than an actual serious project.

Site: http://www.creativeapplications.net/sound/the-creatures-of-prometheus-generative-visualisation-of-beethovens-ballet-with-houdini/

elizabew-Project-04- String Art

sketch

//Elizabeth Wang
//elizabew
//Section E
//Project-04: String Art


// for (var VARNAME = STARTINGVALUE; VARNAME < LIMIT; VARNAME += INCREMENT) {
//     WHAT_TO_DO;
// }


function setup() {
  createCanvas(400,300);
  background(0);

}

function draw() {

  for (var x = 0; x <= 300; x += 10){ //looping lines with a spacing of 10 each time
    stroke(255);
    strokeWeight(.01);

    line(0, height - x, x * 1.5, 0); //upperleft

    line(width, x * 1.5, height - x, height); //lowerright

    line(0, x * 1.5, height/4 + x, height); //left side of eye

    line(height, height/20 + x, x * 1.5, 0); //right side of eye

    noStroke();
    fill(255);
    ellipse(180, 160, 80, 80);

  }



}

Reflection

At the beginning of the project, instead of coming up with an idea of what to make with lines, I wanted to practice getting used to using the for() function and seeing how it affects the shape and look of the lines. After a while, I felt that what I was beginning to form looked like an eye, and so I decided to work towards that as the goal of my project.

sunmink- Looking Outwards- 04

The origin of word ‘entropy’ came from the Greek word meaning transformation. The sound artist fraction collaborates with louis philippe starnault, naure graphique, and creation ex nihilo to perform a mesmerizing music installation. The installation that provides the sound includes over 6000 distinctive pixels that can transform on order.

When playing his music, fraction absorbs the audience by introducing them an intense-audio-visual experience. He usees sound spatialization, direct light, and projections to enable the audience to fully experience the ‘Entropia.’ I admire this artifact itself because it is an interactive product made by a collaboration of MadMapper, TouchDesigner, Resolume, MaxMsp, Ableton Live, Lemur and IanniX who created algorithms that can illuminate the spherical structure and also built RGB LED strip that is the skeleton of ‘entropy.’ The experience of ‘entropy’ is created through an algorithm that is programming signal based on the pressurized soundtrack. The signals are converted into noise and the luminous behavior during the performance.

 

sunmink-Project04-string-Art

sketch

//Sun Min Kim 
//Section E
//sunmink@andrew.cmu.edu
//project04-stringart 

var x1 = 50; //x of line
var y1 = 0; //y of line 

function setup() {
    createCanvas(400, 300);
}

function draw() {
    background(190, 100, 120);

    var r = acos(height, width); //rotating angle 

    for (var i = 0; i <800; i +=30) {
    	strokeWeight(1); 
    	rotate(r); 

    	stroke(191, 61, 80); //top red line 
    	line(400 , i / 8, i / 6, 2); 

    	stroke(191, 20, 130); //left pink line 
    	line(0, i / 3, i, 200);

    	stroke(130, 100, 140);
    	line(x1 + 250, y1, i/2 -300, 400); //left purple line 

    	stroke(255); 
    	line(x1 + 340, y1, i/2 -100, 400); //right white line 

    	stroke(245);
    	line(x1 - 100, width/2  , i - 300, 300); //bottom grey line 
    	
    	

    }

}

For this project, I started off with simple straight lines because I was not sure how function for () is going to act on this problem. However, as I gained confidence in using for (), I could build more layers of strings step by step. It was very interesting to create curves without curve vertex function and I look forward to learning many other ways to build similar result.

jooheek -Project04-StringArt

sketch

//JooHee Kim
//Section E
//jooheek@andrew.cmu.edu
//Project-04

function setup() {
    createCanvas(400, 300);
}

function draw() {
	background(0);

	//color variables so that it can change to mouseX & Y
	var sRColor = mouseX;
	var sGColor = mouseY;
	var sBColor = 255;

	//x1,y1 is for the left 2 curves when mouse is at 0, 300
	var x1StepSize = 30;
	var y1StepSize = 20;
	
	//x2, y2 for stationary right 2 curves when mouse is at 0, 300
	var x2StepSize = 15;
	var y2StepSize = 25;

	//x&y position is the same for both curves
	var xposition = mouseX;
	var yposition = mouseY;

    for (var i = 0; i <= 30; i ++) {
    	//variables that constrain x1&y1 position to canvas size
    	var cx = constrain(xposition, 0, 400);
    	var cy = constrain(yposition, 0, 300);

    	strokeWeight(0.75);
    	stroke(sRColor, sGColor, sBColor);

    	//curve at top left corner when mouse is at 0, 300
    	//i*4/3 because height and width of canvas is different
    	line(cx, y1StepSize*i, x1StepSize*i*4/3, cy);

    	//curve at bottom left corner when mouse is at 0, 300
    	line(cx, height - y1StepSize*i, x1StepSize*i*4/3, height - cy);

    	//curve at top right corner when mouse is at 0, 300
    	stroke(sRColor - 100, sGColor - 100, sBColor-100);
    	line(x2StepSize*i*4/3, height - cy, width - cx, y2StepSize*i/2);

    	//curve at bottom right corner when mouse is at 0, 300
    	line(x2StepSize*i*4/3, cy, width - cx, height - y2StepSize*i/2);

    }


}

I started by creating a simple composition on Illustrator just to understand how the coordinates work in string art curves. From there, I decided on the intervals of the lines to have some variation in the curves. I also wanted it to make it interactive with the mouse, so I made x&y positions and the color of the lines to be dependent of the lines. Although the code for this project was fairly short and simple, I thought it was pretty complicated when I was trying to understand the concept.

 

Initial sketch on Illustrator

gyueunp – Project-04: String Art

String Art

//GyuEun Park
//15-104 E
//gyueunp@andrew.cmu.edu
//Project-04

function setup() {
    createCanvas(400, 300);
    background(0);
}

function draw() {
	var x1 = -5;
	var y1 = -25;
	var x2;
	var y2;

	for (var x2 = 0; x2 < width; x2 += 10) {
		for (var y2 = 0; y2 < height; y2 += 10)
	stroke(255);
	strokeWeight(0.2);
//lines from top left 
	line(x1-15,y1,x2,y2,40);
	line(x1-25,y1,x2,y2,40);
	line(x1-35,y1,x2,y2,40);
//lines from top right 
	line(width+35,y1,x2,y2,40);
	line(width+25,y1,x2,y2,40);
	line(width+15,y1,x2,y2,40);
}

//growing center lines
	for (var i=0; i <= 2000; i += 100){
		var xPos = random(0,width); 
		var yPos = random(0,height);
		var x2Pos = random(width/2,width/2);
		var y2Pos = random(height/2,height/2);
		var linethickness = random(0,1);
	stroke(255,20);
    strokeWeight(linethickness);
    line(xPos,yPos,x2Pos,y2Pos);
}
}

One of the most attractive aspects of string art is the pattern that is created by the merging lines. Therefore, I focused on accentuating the patterns that are created by the spaces between the lines. In order to provide a contrast, I decided to limit the usage of colors for this project.

mstropka-Project-04

sketch

//Max Stropkay
//Section E
//mstropka@andrew.cmu.edu
//Project-04


function setup() {
    createCanvas(400, 300);

}
function draw() {
  background(255);
  //draw ten lines from upper left corner
  //line spacing controled by mouseX and mouseY
  for(var i = 0; i < 10; i ++){
    line(0, 0, i*mouseX, mouseY);
  }
  //draw ten lines from upper right
  for(var i = 0; i < 10; i ++){
    line(400, 300 , i*mouseX, mouseY);
  }
  //draw ten lines from lower right
  for(var i = 0; i < 10; i ++){
    line(400, 0, i*mouseX, mouseY);
  }
  //draw ten lines from lower right
  for(var i = 0; i < 10; i ++){
    line(0, 300 , i*mouseX, mouseY);
  }


}

For this project, I tried doing something simple because I am still not 100% comfortable with loops. So I made a couple loops that generate lines that touch at the x and y values of the mouse.

mstropka-Looking Outwards-04

This chair is part of a series of chairs called Nóize chairs by Estudio Guto Requena. The Brazilian designers recorded ambient noise in the streets of São Paulo then used the information from the sound recordings to distort the surfaces of 3D modeled chairs. They distorted three classic Brazilian chair designs. The goal for the designers was to create a chair that represented the culture and ambiance of brazil. By taking an already iconic chair design and distorting it with the sounds of the area, the designers created a very interesting object that is symbolic of their native country.

I find this project very interesting because it is an example of designers building off of the ideas that older designers had with the new technology that is available today. However, I think that the way they distorted the models of the chairs is a pretty generic algorithm for distortion. I think that this concept could be better executed if the designers edited the distortion algorithms to generate geometry that was symbolic of some other aspect of Brazil culture or reminiscent of the original design of the chair.

ifv-Looking-Outwards-04

“Great Animal Orchestra”

by Bernie Krause and United Visual Artists.

 

Krause takes recorded audio of natural elements and creatures to create soundscapes that are not only interesting to listen to but are also visually compelling. Krause uses the information within the audio to generate a spectrogram which is projected on the walls of a fully immersive space. This visual component is not only meant to draw in the observer, it also teaches the visual cues of certain types of sound created by different creatures. I admire the focus Krause brings to parts of nature most people overlook, in his TedTalk regarding his work he talks about his discovery that even the smallest insects, such as ants, have their own unique soundscape. His attention to detail shows in the execution and thought behind the creation and presentation of this work.

 

Bernie Krause talking about his work with soundscapes in his TedTalk

juyeonk-LookingOutwards-04

 

 

Title: Ambient Synthesis

Creator: Amanda Ghassaei

Year: 2012

Link to the project: http://www.amandaghassaei.com/projects/ambient_synthesis/

Link to the bio of the artist: http://www.amandaghassaei.com/about/

 

Ambient Synthesis is a sound sculpture created by Amanda Ghassaei that senses the change in light stimuli in its surroundings and transforms them into sound. The program that is in charge of this transformation is called ‘Inkblot’, which uses the MaxMSP application to convert the light data into slowly evolving synthetic tones.

This sculpture was inspired by the concept of ‘additive synthesis,’ which outlines that simple sounds can be added or mixed together in order to create a broader and a more complex range of sounds.

This mechanism is best observed during sunrise and sunset where there is a drastic change in the amount of light present around the machine. When the sculpture is stimulated, one or more pixel will appear on its screen. Each pixel represents a different frequency of the harmonic series. When these pixels become activated, the tones that correspond to each pixel are added to the mixture, producing a gradually evolving soundscape over time.