LO 2 – Generative Art

Machine Hallucinations by Refik Anadol is a generated art projection that uses AI to compile 10 million images of New York online. The machine uses these images to generate moving, shifting images to represent the lifetime of the city. I admire how organic the final film looks, while it interprets the real, dynamic landscape of New York. It reflects the memories of a breathing city and how we may remember the city in our own memories. The artist utilized an entire archive of images to create an output that looks like an alternative reality. Anadol’s works utilizes data to generate mesmerizing, colorful, and harmonic sculptures. His work starts with a simple question of how people and machines can remember their environment and its patterns, to create a hallucinative image.

https://refikanadol.com/works/machine-hallucination/

Project 2 – Variable Face

click the clown man

sketch
//Se A Kim, Section D

var noseWidth = 100;
var noseHeight= 100;
var eyeheight = 250;
var eyeSize = 20;
var bodywidth = 500;
var bodyheight = 500;
var mouthheight = 100;
var mouthwidth = 100;



function setup() {
    createCanvas(600, 600);
    background(219, 246, 247);

}

function draw() {

noStroke();
frameRate(5);
fill(random(0,255), random(0,255), random(0,255));
ellipse(300, 300, 400, 400);
ellipse(400, 400, 300, 300);
ellipse(100,500,400,400);
ellipse(500,500,400,400)

noStroke();
fill(255, 255, 255);    //body
ellipse(300, 600, bodywidth, bodyheight);

fill(255, 0, 0);
triangle(280, 600, 300, 300, 350, 600);

fill(255,218,185)   //face
ellipse (300, 300, 300, 300);

frameRate(2);
fill(random(0,255), random(0,255), random(0,255));
arc(300, 330, mouthwidth, mouthheight, 0, 600);    //mouth

 //eye
ellipse(250, eyeheight, eyeSize);
ellipse(350, eyeheight, eyeSize);

noStroke(); //nose
fill(255,0, 0);
ellipse(300, 300, noseWidth, noseHeight);


}

function mousePressed(){

    noseWidth = random (50, 100);
    noseHeight = random (50, 100);
    eyeSize = random (20, 50);
    bodywidth = random(200, 500);
    bodyheight = random(300, 500);
    mouthwidth = random(100,200);
    mouthheight = random(100,200);
    eyeheight = random(230, 270);


   
}

Project 1 – Self Portrait

This is what I look like in code.

portrait
function setup() {
    createCanvas(600, 700);
    background(219, 246, 247);

}

function draw() {
    if(mouseX < 300 & mouseY < 350){
        background(180, 209, 211);
    }   else if (mouseX > 300 & mouseY < 350) {
        background(255, 231, 164);
    }  else if (mouseX < 300 & mouseY > 350){
        background(166, 126, 193);
    }   else {
        background(199, 71, 45);
    }

    noStroke();
    fill(0, 0, 2);  //hair
    ellipse(300, 400, 400, 600);

    fill(48, 82, 195);  //body
    ellipse(300, 700, 400, 600);

    fill(210, 170, 110);    //neck
    ellipse(300, 400, 200, 200);

    fill(0, 0, 0);  //hairline
    ellipse(300, 250, 300, 300);

    fill(235, 186, 123);    //skin
    ellipse(300, 300, 300, 350);

        fill(0, 0, 2);  //hairline
    ellipse(300, 250, 300, 300);

        fill(235, 186, 123);    //skin
    ellipse(300, 300, 250, 250);


    fill(0, 0, 0);      //eyes
    ellipse(230, 300, 40);
    ellipse(370, 300, 40);

    fill(255, 255, 255);
    ellipse(240, 290, 10);
    ellipse(380, 290, 10);

    fill(201, 153, 90);
    triangle(270, 370, 300, 300, 330, 370);     //nose

    fill(255, 150, 123);        //mouth
    arc(300, 400, 80, 80, TWO_PI, PI); 

    if (mouseIsPressed) {
        fill(235, 186, 123);      //eyes
    ellipse(230, 300, 50);
    ellipse(370, 300, 50);

    fill(0, 0, 0);
    rect(210, 300, 50, 5);
    rect(350, 300, 50, 5);

    }

    fill(46, 26, 2);
    rect(210, 250, 50, 10);
    rect(350, 250, 50, 10);

  

}

LO 1 – My Inspiration

Espen Kluge , “Alternatives”

During my deep dive into tech artists, I came across a portrait series by Espen Kluge titled, “Alternatives”. The creation process included compiling multiple photographs and reworking them with creative code to arrive at an abstracted portrait. Each portrait uses soft colors which portrays a gentle color scheme to a harsh compilation of lines and geometric shapes. His portraits feel architectural, but are toned down by their muted colors. It’s interesting to note that he experimented with different facial expressions per portrait to arrive at an abstracted face. In an interview, he states,” evolution has trained us to read the nuance of human facial expression with a higher degree of sensitivity than any other visual input.” his focus on the subtle expressions are covered by the multiple generated vectors on his portraits, but still evoke the creases and lines of a facial expression. He used processing and JavaScript to create his colorful portraiture series and explained that the code loops through all the pixels at semi random, and generates lines between the pixels to create the portraiture.

A portrait from Kluge’s, “Alternatives”