FINAL PROJECT

PROJECT TITLE
I Will Love You Forever

INRODUCTION TO CONCEPT

The project I Will Love You Forever is an exploration on autonomous computational iterations through time. If the transportation of information is honest with what it hears and promises reliability, how is that information disorient so often? This is an inquiry on machine interpretation and the process of communication. An infinite dialogue loop within the computer itself is initiated by an user. For every input, the result will become more and more unpredictable, distancing from the original input further and further away.


 

DEVELOPMENT

The project is written with javascript, using the P5 Speech library and Chrome speech recognition webkit. The activity is initiated with an audio input, then translated into text, the text then will be read by the computer into audio, creating an infinite loop.

CLASS 008

Project : Future Name Index

About the project :
A name index in the context of internet age.

Context:
Webpage

How it should work:
Mix matching prefixes and suffixes from A to Z, eliminating all existing english names, adding symbols including &, @, $ , ! randomly.
Each time the page will give out 26 names from A to Z, press index to refresh a new list.

Current issues:
cannot make the name to appear one at a time
finding the right database source
click on "INDEX" to refresh list

CLASS 004

This week I decided to integrate my visual language class with ICM, playing with color and mapping them into gradients.

CLASS 003

Playing with Paula, we tried to create a moon phase sketch. But ended up playing with computer generated randomness.
Below is our final sketch, we named it We Pause Between Orbits, as the stars appear and we float still.

We also made this sketch, playing with the mouseX and mouseY, the results were very surprising. Especially when MouseX moves to the left side of the border.

CLASS 002

sketch link
click the mouse, the background will change.
move the mouse, the line will start rotating.

 

The whole process of making this sketch took me a full day, yet I never lost interest or patience to keep going. (while it might just be a few minutes work for others) I sketched the four parts separately first, practicing each movements on a clean canvas, then combined them together.

key functions and logic used:
/var speed
/position = position + speed
/if (there's a limit for position ) speed = speed * -1

/for loop
/sin() / cos()

/mouseX*mouseY
/mousePressed

/if(){} + else{}

One of the biggest challenges is to make that line rotate from the middle, it's actually consisted of two lines, although it appears to be one single line. Just this simple logic took me almost an hour to figure out.

The second challenge, and still not quite solved problem is how to limit the rectangles in the bottom-right scene to not float out it's own section. (This is a reminder to self, I need to ask Mimi this question.)

CLASS 001

PART 1
How computation applies to interests

As a new born baby to the computational world, I'd like to understand it's characteristics and abilities, which might take endless period of time. In an imaginary and idealistic world, I would like to collaborate with the computer to create new ways of seeing digital films - non-linear, interactive, multi-screens, multi-scenes, projection mapping on non-planar screens; using real-time data to interact with light and sound to create spaces. Yet, there's so little I understand of the computational world so far, I'm sure after some more serious dates with my computer and arguments in code, there will be new thoughts and concepts to experiment. 

Below are some artists and works that I dwell and dream upon a lot, conceptually, aesthetically, or artistically. 

ROBERT IRWIN

ROBERT IRWIN

JAMES TURRELL

JAMES TURRELL

RYOJI IKEDA

RYOJI IKEDA

ROBERT IRWIN

ROBERT IRWIN

JAMES LENG

JAMES LENG

TEIJI FURUHASHI

TEIJI FURUHASHI

 

PART 2
First sketches and issues

Inspired by John Wesley and Alex Katz paintings, and also the one and only lipstick I own, I decided to attempt to draw a pair of lips painted bright red. Started by sketching on the notebook, finding suitable coordinates to position and specify a suitable ratio of the lips, also the most important to determine what kind of shapes I should be using.

I found using arc(); was the most efficient, yet not likely the most artistic way, to draw the lips. A pair of lips is constituted of two small arcs as the top lip with a third arc below as the bottom lip. 

 
 

After drawing the first draft of the lips, I found the arcs shapes being a bit too thick, so I tuned the shape by playing with the numbers instead of calculating precisely on a calculator. Then I decided I should draw two more pairs with slightly different shades. Using the translate(); function was really helpful, saved a lot of time calculating exact coordinates.

Looking ahead, I would like to know when and how to use the for loop correctly, to save steps and also make more complicated patterns.

 

PART 3
Running and playing around

Exploring https://p5js.org/reference/, I stepped into the 3D graphics section. Thought this might be a good exercise to figure out the principles and syntax of creating 3D shapes. This page is really helpful for understanding the coloring and lighting syntax and grammar for 3D shapes. Quite a few things that are still a bit unclear and need further explorations to truly understand how they work. After running and playing around with codes from the library on the website, I started drawing this sketch.

Most important functions in this sketch:
perspective();
ambientLight();
pointLight();

ambientMaterial();
ellipsoid();

rotate();

The speed and direction of the rotation is tricky, as it needs to be smooth and as almost similar to real life motions. Using frameCount as the control parameter made the object spin way too fast, instead slowing it down by frameCount * 0.001 made it almost like the objects were floating in space.