LO-06 Randomness

Faces of Randomness in black
Faces of Randomness in white

Martin Krzywinski created this piece, Faces of Randomness on Circos in 2013. Krzywinski created this piece based on the digits of 𝜋 and drawing lines between sixteen random numbers with 1000 digits each represented by their digit transition paths and frequencies.

I admire the intricacy of this piece. The placement of the lines and use of colors make each of the 16 circles look like mini galaxies. I also admire how the artist is able to visually portray the impact of changing just one number to create a whole new image. It is also interesting to see how each of the 16 circles look similar despite the random inputs used to create the piece.

Krzywinski’s background as a scientist influences his artistic sensibilities which is seen in the way he uses data to inform his art. Krzywinski uses data and facts to create his artwork and enhances it with bright color choices. He balances the use of randomness by organizing the piece in a neat grid structure.

Project-05-WallPaper

I want to create a Christmas vide wallpaper that involves festival elements such as Christmas trees, snowmen, etc. I used the the loop we learned in class to create repetitive patterns of the wallpaper.

p5.js vers 0.9.0, Edit index.html to Change This Title

Looking Outwards

Aghori Portrait by Aldo Martínez Calzadilla(2017)
URL: https://fineartamerica.com/featured/3d-aghori-portrait-aldo-martinez-calzadilla.html

The piece looks extraodinarily realistic and detailed. The image has the quality of a photograph as the character in the image looks like a real human-being with well depicted hairs, muscle lines, blood vines, and skin texture. The character is holding a skull with both hands above his head with calm, religious facial expressions, drawing viewers’ attention to this uncommon behavior. The artist impresses the viewers with his expertise in modeling and sculpting. The artist used 3D programs such as Brush, Maya, and Mari, which allows him to first build the models, and then refine the models by adding colors, skin textures, other details, and even shadows and lighting. The artist demonstrates his deep understanding of the human body and observational skills, which makes the piece convincing in terms of anatomy. With the use of technology, algorithms, computational softwares, and data visualization, the artist was able to generate this sophisticated, narrative, and appealing image.

PROJECT 05 – WALLPAPER

sketch
function setup() {
    createCanvas(600, 500);
}

function draw() {
    background(214, 204, 135);

//stars 
    for(var x = 25; x <= 600; x += 150) {
        for(var y = 0; y <= 500; y += 160) {
            push();
            translate(x, y);
            poopiB(x, y);
            pop();
        }
   }

//pizza
    for(var x = -50; x <=600; x += 150) {
        for(var y = -50; y <= 500; y += 160) {
            push();
            translate(x, y);
            pizza(x, y);
            pop();
        }
    }
}

function poopiB(x, y) {
//head
    stroke(0);
    fill(255, 254, 143)
    rect(35, 70, 25, 70, 17)

//hat
    fill(0);
    rect(32, 65, 31, 8)
    rect(38, 35, 20, 30)

//hat detail
    fill(35, 105, 94)
    rect(38, 60, 20, 5)

//eyes
    fill(255);
    circle(35, 95, 18, 18);
    circle(60, 95, 18, 18);

//pupils
    strokeWeight(3);
    fill(0);
    point(35, 95);
    point(60, 95);

//nose
    strokeWeight(1);
    noFill();
    beginShape();
    curveVertex(44.5, 102);
    curveVertex(44.5, 102);
    curveVertex(45.5, 112);  
    curveVertex(47.5, 115);
    curveVertex(49.5, 112);
    curveVertex(50.5, 102);
    curveVertex(50.5, 102);
    endShape();

//mouth
    fill(105, 35, 37);
    beginShape();
    curveVertex(39, 118);
    curveVertex(39, 118);
    curveVertex(56, 118);
    curveVertex(56, 121);
    curveVertex(54, 122.5);
    curveVertex(47.5, 125);
    curveVertex(40.5, 122.5);
    curveVertex(39.5, 121);
    curveVertex(39, 119);
    curveVertex(39, 119);
    endShape();

    fill(202, 66, 68);
    beginShape();
    curveVertex(44.5, 124);
    curveVertex(44.5, 124);
    curveVertex(45, 122);
    curveVertex(46, 121);
    curveVertex(49, 120.5);
    curveVertex(52, 123.5);
    curveVertex(51, 124.5);
    endShape();

}

function pizza(x, y) {
//crust
    stroke(0);
    fill(208, 166, 116);
    triangle(28, 75, 60, 55, 85, 85);
    quad(24, 69.5, 85, 80, 85, 85, 24, 75);
    quad(24, 69.5, 33, 70.5, 60, 50, 58, 47);

//cheese
    fill(255, 248, 194);
    triangle(28, 70, 60, 50, 85, 80);

//pepperoni
    fill(223, 78, 73);
    circle(45, 67, 8, 8);
    circle(68, 70, 8, 8);
    circle(59, 60, 8, 8);


}

I love Rick and Morty, and I wanted to create a wallpaper of the additional characters that show up in certain episodes. One of my favorite characters is Mr. Poopybutthole. My wallpaper is inspired by a scene in the show where he is also surrounded by pizza.

Scene from Rick and Morty of Mr. Poopybutthole.

LO – 05: 3D COMPUTER GRAPHICS

Screenshot of Renders by @bijouhome_ on Instagram

@bijouhome_ on Instagram is an account which posts varieties of renderings of building interiors. I find their work to be extremely inspiring because although each rendering is different from another, there is a clear style and aesthetic to each design. The use of pastel colors, as well as the realistic, yet futuristic style is something I strive for in my work. Although I do not know much about the exact process of how the renders are generated, I would assume that Rhino, and V-Ray are two very important tools that are common when rendering for architecture. Knowing the challenges and difficulties of these two programs, I was especially inspired by the extent of which the tools can be used.

https://www.instagram.com/bijouhome_/

Project 5: Wallpaper

My process for creating this wallpaper assignment was to first create the repeating sun pattern and then the repeating snake pattern. To accomplish this, I created a separate sun function and snake function. After I created the two functions, I used a series of for loops to create the patterns. The symbols of the snake and the sun were inspired by the Temple of the Feathered Serpent in Teotihuacán.

sketchDownload
function setup() {
    createCanvas(500, 500);
    background(220);
    text("p5.js vers 0.9.0 test.", 10, 15);
}

function draw() {
	background(97,104,181);
	//sun pattern
	push();
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,50);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,100);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,150);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,200);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,250);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,300);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,350);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,400);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	push();
	translate(0,450);
	for(sunRow = 0; sunRow <= 9; sunRow += 1){
		sun();
		translate(50,0);
		}
	pop();
	translate(-20,0);
	for(drawSnake = 0; drawSnake <= 5; drawSnake += 1){
		snake();
		translate(0,105);
	}
	noLoop();
}

function sun() {
	noStroke();
	fill(97,104,181);
	square(0,0,50);
	fill(249,235,219);
	//sun 1
	circle(25,25,25);
	//sun rays 1
	stroke(249,235,219);
	line(25,25,25,5);
	line(25,25,25,45);
	line(5,25,25,25);
	line(45,25,25,25);
	line(25,25,10,10);
	line(25,25,40,40);
	line(25,25,10,40);
	line(25,25,40,10); 
}

function snake(){
	noStroke();
	fill(10,random(100,255),0);
	//body
	beginShape();
		vertex(125,25);
		curveVertex(150,35);
		curveVertex(200,25);
		curveVertex(250,35);
		curveVertex(300,25);
		curveVertex(320,30);
		curveVertex(350,40);
		curveVertex(375,30);
		curveVertex(400,25);
		vertex(475,32.5);
		curveVertex(400,34);
		curveVertex(350,50);
		curveVertex(300,35);
		curveVertex(250,50);
		curveVertex(200,35);
		curveVertex(150,50);
		curveVertex(125,30);
	endShape(CLOSE);
	push();
	//tongue
	stroke(255,10,0);
	line(90,29,80,29);
	//head
	noStroke();
	ellipse(110,29,40,15);
	//eye
	fill(255);
	ellipse(110,27,5,3);
	strokeWeight(3);
	stroke(0);
	//pupil
	point(110,27);
	
	
}

LO- 3D Computer Graphics

A work of 3D graphics that I found interesting is the augmented reality installation “Organised Labour (2016)” by UK artist Alan Warburton. The installation is of green protesters that block a street in Paris and was produced for Une Journée de Coïncidences.
I admire the artwork’s simplicity and strong impact because I appreciate how Warburton uses clear digital models and AR to convey his ideas. I suppose that the algorithms used to render this artwork had to respond to the environment of the Parisian street so that the shadows and size of the installation fit into the environment convincingly. The artist’s goal of the project was to explore the immateriality of AR and how it relates to the urban landscape. As such, the artist’s sensibilities show through the final product because the green model fits into the environment but, due to its style and the fact that it only exists in the digital realm, is constantly reminding the viewer that its not a physical object.

Image of “Organised Labour (2016)”

Project 5: Wallpaper

When creating this wallpaper, I kept thinking of the kitschy nautical patterns you’d find plastered on the walls of seaside restaurants. I drew a lot of inspiration from cute illustrations on Pinterest that emulate this niche aesthetic.

nautical
function setup() {
    createCanvas(550, 550);
    background(220);
    bgColor = color(180, 218, 221);
    floatyColor = color(215, 53, 76);
    wheelColor = color(115, 175, 193);
}

function draw() {
    background(bgColor);

    //seashells
    for(var c = -5; c < width; c += 93) {
        for(var d = -5; d < height; d += 200) {
            push();
            translate(c, d);
            seashell();
            pop();
        }
    }

    //seashells again
    for(var e = -10; e < width; e += 95) {
        for(var f = 95; f < height; f += 190) {
            push();
            translate(e, f);
            seashell();
            pop();
        }
    }

    //wheel
    for(var x = 45; x < width; x += 190) {
        for(var y = 40; y < height; y += 200) {
            push();
            translate(x, y);
            woodenWheel();
            pop();
        }
    }

    //flotation devices
    for(var a = 5; a < width; a += 180) {
        for(var b = 0; b < height; b += 180) {
            push();
            translate(a, b);
            floaty();
            pop();
        }
    }
}

//the blue & white steering wheels
function woodenWheel() {
    fill(bgColor);
    noStroke();
    ellipse(38, 37, 45, 45);

    handles = 8; //number of handles on the steering wheels
    handleAngle = 360/handles; //angle between each handle
    radius = 75/2; //length of each handle
    strokeWeight(4);
    stroke(wheelColor);
    
    for (angle = 270; angle < 600; angle = angle + handleAngle) {
        x = cos(radians(angle)) * radius;
        y = sin(radians(angle)) * radius;
        line(radius, radius, x + radius, y + radius);
    }

    noFill();
    strokeWeight(5);
    stroke(255);
    ellipse(38, 37, 50, 50); //outer wheel
    ellipse(38, 37, 10, 10); //inner spoke
}

function floaty() {
    noFill();
    strokeWeight(20);
    stroke(255);
    ellipse(0, 0, 75, 75);

    noStroke();
    fill(floatyColor);
    arc(9, 9, 75, 75, 0, PI/2); //bottom right red
    arc(-9, 9, 75, 75, HALF_PI, PI); //bottom left red
    arc(-9, -9, 75, 75, PI, HALF_PI + PI); //top left red
    arc(9, -9, 75, 75, HALF_PI + PI, 0); //top right red

    fill(bgColor);
    ellipse(0, 0, 55, 55);
}

function seashell() {
    push();
    noStroke();
    fill(255);
    arc(0, 0, 50, 50, PI + QUARTER_PI, QUARTER_PI - HALF_PI);
    arc(0, -5, 25, 20, QUARTER_PI, PI - QUARTER_PI);
    pop();

    grooves = 4; //number of lines on seashell
    grooveAngles = 60/grooves; //angle of lines on seashell
    radius = 50/2; //length of each line
    strokeWeight(1);
    stroke(bgColor);

    translate(-25, -25);
    for (angle = 225; angle < 325; angle = angle + grooveAngles) {
        x = cos(radians(angle)) * radius;
        y = sin(radians(angle)) * radius;
        line(radius, radius, x + radius, y + radius);
    }
}

Looking Outwards 05: 3D Computer Graphics

One artist whose work I recently came across and really admire is Rebecca Tell,
or “Bexelyn,” the lead artist at Sago Mini. I fell in love with her artwork
“Mr. Strawberry & Friends Go Camping,” in which she utilized the 3d software
Cinema 4D to construct and render a scene of cute little food characters out
camping in a forest.

I was drawn to this piece’s soft color palette, curvy stylization, and cute
character designs, all of which are signature features of Tell’s unique 3D
modeling style. I especially admire this work because of the amount of
intricacies embedded within the canvas – although the camping scene
stylistically looks really simple, Tell had to individually model each character
and prop in the work, as well as color, light, and shade these assets and the
background as well. As someone who’s used 3D software like Maya and Blender before and had difficulties even extruding 3D models correctly, I’m really appreciative of the amount of work Tell put into this piece and hope to apply that same mindset of hard work in all of my future projects.

Mr. Strawberry & Friends Go Camping

Rebecca Tell’s Instagram

Project – 05 – wallpaper

drippyDownload
var size = 60
function setup() {
    createCanvas(420, 470);
    background(220);
    
}

function draw() {
	background (255, 143, 233);
	for (var y = size/2 ; y < height + size/2 ; y += size *2){
		for (var x = size/2; x< width + size / 2 ; x += size *2){
			//stripes
			noStroke();
			fill(93, 146, 245, 30);
            rect(x + 45, 0, width/14, height);
			noStroke();
			//face
			fill(245, 237, 93);
			circle(x, y, size);
			//drips
			ellipse(x, y + size/2, 10, 40);
			circle(x, y + size/2 + 18, 12);
			ellipse(x - size/2 + 8, y + size/2 - 8, 10, 30);
			circle(x - size/2 + 8, y + size/2 + 2, 12);
			ellipse(x + size/2 - 7, y + size/2 - 4, 8, 30);
			circle(x + size/2 - 7, y + size/2 + 6, 10);
			//eyes
			stroke(0);
			line(x-15, y - 15, x-5, y - 5);
			line (x - 15, y - 5, x -5, y - 15);
			line(x+15, y - 15, x+5, y - 5);
			line (x + 15, y - 5, x + 5, y - 15);
			//lightning bolt
			noStroke();
			fill(255, 156, 253);
			quad (x + 50, y + 45, x + 75, y + 45, x + 65, y + 65,
			 x + 45, y + 65);
			quad(x + 65, y + 65,  x + 45, y + 65, x + 60, y + 80,
				x + 75, y + 80);
			triangle(x + 60, y + 80, x + 75, y + 80, x + 55, y + 110)
			//mouth
			if (x == y){
				noFill();
				stroke(0);
				arc(x, y + 20, size/2, size/2, PI, 2*PI); // frown
				fill(93, 146, 245);
				noStroke();
				circle(x - 15, y+3, 5);
				triangle(x - 17.5, y +3, x - 12.5, y+ 3, x - 15, y - 5)
				//text
			    textSize(15);
			    stroke(245, 237, 93);
			    fill(93, 146, 245);
		        text("drippy", x - 20, y + size + 10);

			}else{
				noFill();
				stroke(0);
				arc(x, y, size / 2, size /2, .1*PI, .9 * PI); // smile
			}
		}
	}
	noLoop();
}

I based this design off a doodle that i have been drawing for a while and decided to play with gradients, shapes, and texts to create a textile fabric pattern that I would love to wear.