NOC: Ink & Tatoo(midterm project) – Moon(Candy Bi)

Project: Ink & Tatoo

Date: 05.18.2019

Processor: Moon

Description:

Ink & Tatoo is a projection project aiming to imitate the traditional tatoo in the style of ink. Additionally, it is animated to show the drawing process of tatoo. Through animation, it adds on to tatoo’s charm and conveys stronger power. Tatoo is designed to be in the shape of branches and flowers to better match the ink style. It is designed to map on one’s shoulder.

Video:

Continue reading “NOC: Ink & Tatoo(midterm project) – Moon(Candy Bi)”

Nature of Code: Week 10 assignment–Moon(Candy)

Documented by: Candy Bi

Project name: “P5″

Professor: Moon

Date: 4/23/2019

Link: https://editor.p5js.org/candy/present/Fa4vDtNzZ

Video: w10 final

This week we learn about “Atonomous Agency”. I feel that this could be a great way to do the effect I have seen long time ago: lots of particles make up some text, and when mouse hover onto it, the particles would be scattered and would go back to where they should be when mouse leaves.

Sinece this project is made in p5, I decide to make the particles writing “p5”. I first drew the “p5” through pushing the particles as several rectangle shape.

Through later Skye said it looks like “ps”, I feel that it works quite well.

Then I try to map the force accoding to particles’ current position and their original position and apply the force to each particle.

A red dot is used as an object whose position is set according to the mouse position. The red dot is used as the target for particles to check.

Nature of Code: Week 9 assignment–Moon(Candy)

Documented by: Candy Bi

Project name: Spring

Professor: Moon

Date: 4/16/2019

Link: https://editor.p5js.org/candy/present/Fa4vDtNzZ

Video: spring

The project of Spring is developed based on the demo we did in class. Instead of having two balls as objects. I created a class called balls and pushes them over the whole canvas. Each is connected to the two balls connected to it which I called “spring”. These lines would create force onto the balls they are connecting.

Then I add the function to check collision so that balls would feel more natural as with a mass. Collision checking and spring force then add to the interesting dynamic of those balls together.

For the interaction part, I keep the drag function and made the ball being dragged white so that it would be more clear to audience. Additionally, I add the function of key-pressed for sometimes drag is hard to control: balls would just fly away when mouse moves too fast out of the ball. The key-pressed function is only functioned on the first ball in the class to allow for free movements create by those springs.

NOC: Room(midterm project) – Moon(Candy Bi)

Project: Room

Date: 04.07.2019

Processor: Moon

Description: Room is an P5-based interactive project, featuring a 3d dark room which could be light up by three dots of light. The user interaction is as simple as moving their mouse to control the light so that they could see what is in the room. The scale of space being lighted up is directly proportioned to the distance between the three lights(as how it would be in real life). By moving the mouse, user can change the sight of how they perceive the 3d room to imitate the feeling of turning around in the space. Additionally, users can adjust the brightness of the “light” to interact. Room is expected to create an immersive user experience.

Continue reading “NOC: Room(midterm project) – Moon(Candy Bi)”

Nature of Code: Week 6 assignment–Moon(Candy)

Documented by: Candy Bi

Project name: Table Tennis

Professor: Moon

Date: 3/26/2019

Link: https://editor.p5js.org/candy/present/Fa4vDtNzZ

Video: w6

Since we have learned about collision. I really want to imitate such effect as I encounter in real life. I think of table tennis.

I place the 15 balls each by each to form the triangle. Collision fuction is add to each ball by checking the distance between one with other.

To fake the balls going down into the hole. I check the position of each ball and make its size 0 if it is in the black area.

Then I try to  make the balls bouncing on the edges. Two vectors(vx,vy) are created to imitate the bouncing on a solid edge in real life:  vector1.x and vector.y do not change at same time.

Then I add the cue so that the game would be more complete.

By pressing, user add a force to the white ball and thus white ball get a velocity just like in real life when we play table tennis.