Final Project Step 2: Project Proposal-Lifan Yu

Step 2: Project Proposal

By Lifan Yu (ly1164)

      I am doing this final project with my partner Xinran Fan. We would like to create an interactive project that’s educational, inspiring or fun.

 

      Project 1

PROJECT TITLE: Save Me From Plastic Waste!!

PROJECT STATEMENT OF PURPOSE:

(Inspiration) Recently I’ve been doing research into the United Nations’ “Sustainable Development Goals”, thus focusing on many contemporary environmental problems such as pollution. I acknowledged that nowadays, we humans are creating too much plastic waste. This seriously pollutes our ocean. A piece of plastic will take a tremendously long time to be degraded. I came across some news about marine animals accidentally eating plastic pieces, become sick and die. Some marine animals get entangled in plastics. The ocean environment is becoming more and more dangerous for sea animals.

(what’s our project about) This is a two-player game. Player A plays the role of a fish undersea. Player A uses a mouse (we are thinking of creating something that can substitute a mouse) to control the fish’s movement. The fish is supposed to hide away from pieces of plastic waste that dropped into the sea and starts to float(bounce) around in the water. When the fish touches a piece of plastic, the plastic gets “eaten”. When the fish ate over a certain number of plastic pieces before the game ended, the fish will die and game ends.

Payer B plays the role of humans. Three different kinds of plastic will fall down from different places in the sky—plastic tableware, plastic packaging and plastic bottles. These represent the plastic products we use and dispose frequently. The person will use two buttons (connected to Arduino) –a left and a right button to control movements of a board (a rectangle shape in processing) that blocks plastic pieces from falling down(into the sea), representing actions to lessen plastic product usage. Plastic items will disappear when they touch the “board”.

When the players win the game, a piece of audio will be played, a sign will appear that instructs the players to the direction of a candy box. Players can take candies from a box placed nearby. When players move close enough to the box, a servo motor that’s inside the box and is attached to a box of candy will turn and a box of candies will be served. Small pieces of notes with daily actions that helps turn our world into a sustainable one will be put on the wrappers of the candies.

(specific audience&impact)—Everyone. If we don’t start taking actions, this kind of pollution is eventually going to harm ourselves. Therefore I want to create a project that’s educational—that raises awareness of plastic pollution and calls for daily actions to lessen the use of plastic products.

      (research I did) Scott Snibbe’s – Interactive art: ARCTIC ICE (2008) https://www.snibbe.com/education-entertainment#/arctic-ice/

“Arctic Ice is an interactive immersive exhibit on global warming that tells the complicated story of feedback loops in melting arctic ice that are a major component of climate change.” When people play this game, they try to make movements to keep the ice from melting and allow the little polar beat jump across the ice pieces to its mother.

      (How it influenced my project design) This project I researched is in the form of an interactive game which allow people to interact with it, move around and have fun while being introduced to the global warming and its negative effects. This raises people’s environmental awareness. Especially when they see the happy scene of the two bears hugging, people will naturally cherish what we still have right now—right now when there’s still something we can do to solve global warming problems. It is easy to play, fun and educational.

Project 2

PROJECT TITLE: Be Safe Online!

PROJECT STATEMENT OF PURPOSE:

(inspiration)My partner Xinran came up with this idea. Elders are easier to be taken in by online frauds because they are not very familiar with the environment online.

(what’s our project about/audience and impact) This is a game that helps old people get familiar with common situations online. Virtual “webpages” will appear, along with the messages from online fraud or trustworthy websites and trustworthy people like online police. A player can push buttons to decide which ones to believe and which ones not to believe.

Project 3

PROJECT TITLE: Halloween Horrors!

PROJECT STATEMENT OF PURPOSE:

(Inspiration) This idea is inspired by our school’s Halloween event. When we walk into the haunted house, we encounter different horrors when we reach different places. Also, my first animation made in processing contain a small ghost whose movements are controlled by mouse and keys. When it reach different places, different surprises will appear.

My previous animation:

(What’s our project about) We wish to create a real scene with 3D printed objects and a certain route. A “ghost” whose movements are controlled by motors can move along the route. When it reaches certain spots (when sensors sense it), surprises will fall from above or appear from left and right. Falling candies, emerging laser-cut “bats”(these are controlled by motors) and projected animations on its nearby objects (created using processing) etc.

(audience/impact) Everyone who is interested in seeking surprises can have fun playing this game. This is intended to surprise people and allow them to have fun.

Three Idea-clover

  1. The name of the project is Cooperate! Partners! The user of this project will be a team of two person who is going to work on a group project. I come to this idea bases on my personal experience and the responses I got from interviewing some two person’s partner team. I noticed that when working in a team of two, people often experience unhappiness.  Some partners even turn from friends to enemies after the group work, so how to do group work is really important. The unhappiness happens, sometimes because the partner is doing nothing, sometimes because the partner is hard to negotiate and he stick to his own points and never listen to you, sometimes because two of you both think yours idea is good and won’t give up from both sides. Basing on these problem, I plan to use a game to let two people experience what is group work and how can they work better as a team to create a great project. I plan to let the team play the game first before they actually start to working on the project so that I hope this can let them have a better group work experience and become friends but not dislike each other after the teamwork.

  I will do this by setting two pieces which separate from a cube. This means that the two pieces can eventually get together to create a cube. The two pieces represent two person(teammates), getting the cube together means creating a project. In the beginning, the two pieces will be shown on the screen. There will also be two sensors one for player1 and one for player2. The sensors will sense the movement of the palm of the users which can turn the pieces on the screen to different angles to help the users find the right angle to put the cube together. There will also be four keys for each users to use on the keyboard to make the pieces moving up, down, left, and right. Then by finding the right angle of the pieces and move the pieces to the assigned location, the cube get together. This is stage1. For stage2, there will be a instruction “player1 needs to remove a part of the piece so the two pieces can get together”, then player1 needs to figure out which part of the piece needs to remove then finish the cube like what is done in stage1. For stage3, there will also be a instruction”player2 needs to add something as the shape shown here(there will be a shape showing in front of the piece of player2 to let he know what is shape he is going to find)”, then player 2 needs to find the location of the shape in the piece, add the piece, then finish the cube.   For stage4, there will also be a instruction”player1 needs to remove a part of the piece so the two pieces can get together, player2 needs to add something as the shape shown here(there will be a shape showing in front of the piece of player2 to let he know what is shape he is going to find) to finish the cube”, then player1 needs to figure out which part of the piece needs to remove then finish the cube and player 2 needs to find the location of the shape in the piece, add the piece, then finish the cube. Then they can switch the position, player1 be player2, player 2 be player1 to play again. The first stage represent the concept that to do a project, both person need to control and do good of their work(finding the angle of the piece). Then they have to cooperate to finish a piece(change the position up, down, left, and right). The second stage represents the situation that one person needs to gave up some part of his ideas to finish the piece. The third stage represents one person needs to do more to finish the piece because his partners may be lack of skills(so person1 don’t need to change his piece, however he still needs to find the right angle to dock his partners’ piece showing he is paying effort in the project but not doing nothing and be a free rider). The fourth stage represents if your partners come to some new ideas that can improve the project(the cube means perfect work), you need to remove some of your part to help the project be perfect instead of sticking to own points which may not good to the whole project. The challenge of this project first is building 3D model. Second is considering all the possible situation in teamwork.

2. The name of the project is Escaping Room. The target group is people who like exploring games. Nowadays, Escaping Room is a popular game but sometimes it may be too expensive for some people for a good escape room is 100 yuan a time. Some people love this game but them won’t play because it is too expensive. So our target group is people who love playing escape room but can’t afford the fee for the real life game. We turn this into an online game which cutting costs and can let more people play it.

I plan to set three rooms. For each room, only player who answer correctly can get into the next room. The story is set in the background of a detective story. The player is a detective who has to catch a killer who has already committed many crimes. In the first room, giving the previous time when the killer committed crime, the player have to infer then answer the question when will the next crime happen. If the user answered the correct time, he will move to the next room. In this room, I plan to give some hints about the information about the past crime the killer committed then to let the player infer then answer what is the next crime about. If he answered correctly, he will move to the last room. Here I plan to give some information about the location of past crime. Then if he answered all the three questions right, the page will jump to a new page saying “You are a great detective! You successfully catch the killer!”. The challenge of this project first is how to let the player engage in the online game just like how they will feel in real life game. How to set the decoration for each room is a big challenge. Also, how to write the plot and organizing the information showing to the player is another big difficulty.

3. The name of my third idea is Feel it! It is a game let people directly feel how their words and the way they speak affect other people. When doing research, I found some projects testing the body temperature of people to show their emotions. This inspire me to use a sensor to test and show people’s feeling. In daily lives, I feel that sometimes people don’e realize they are getting angry and they hurt their friends unconsciously with snide words. Sometimes friendships break up because of those unconscious words and anger. When the friendship broken, people feel really sad and at that time they realized it’s their unconscious words hurt their friends but the friendship is hard to fix. So my project is created for children under 18 years old because this is a period that they can’t make good control of their emotion. I will also have a temperature sensor sense their body temperature, if it above a certain temperature, there will be a sentence showing on the screen saying, “Control your emotion!” At first, the sentence may be in light red, if the people still in bad mood, the sentence will turn in dark red. By doing this, I hope it can help children better control their emotions and maintain a better friendship.

Recitation 7: Functions and Arrays——Cindy Xie

  • Overview: This week we learned how to make our functions in processing and also learned the function arrays.
  • Step 1:

The first step was to build three different faces. I imitated the code of the class and drew two blue and yellow faces, then I used the triangle function to draw a triangle purple face. In this step, I invented three functions of my own to draw three different faces. Then I put those three functions into my draw function.

link

  • Step 2+ Question 1:

for loop:

I used for loop for two circle faces(  because the triangle face will distort if I use for loop on it). By using for loop and function random, those faces appeared in the canvas randomly.

link

draw loop:

By using the draw loop, those faces can repeatedly keep appearing on the canvas. Compared with for loop, the draw loop can repeat the “for” action and those faces will look like keep moving on the canvas. But if we use the for loop, the faces on the canvas is unmovable because once there are 200 faces on the canvas, the action will stop. This is the difference between the draw loop and the for loop.

link

step3:

Then I used the function array to change the X, Y positions of those faces as well as their color. I used 5 arrays, two of them to control the positions and three of them to control the colors.

link

  • Step 4+Question2:

In the last step, by using the function random and function if, those faces can move on the canvas without moving out of the edge. The function random gives the rage for the movements of the images and the function if constrains them to fix on the canvas.

The benefits of the function array are: you can use a huge number of variables to control your function but also use certain defined variables at the same time. It makes the code easier to see. Also, compared with the function random, the function array gives a certain track for those images.

I would like to use the function array to draw a picture of snowing with a certain track. Because the number of snowflakes is big, and  I don’t want them to fall randomly but with a certain track, I then can use the function array to control my snowflakes and draw a beautiful picture.

link

Recitation 7. Functions and Arrays By Feifan Li

Step 1: Creating a Graphic

I was not sure what to draw, at first I wanted to draw a snowman, and I used functions like ellipse() and line() to make a cute snowman with 2 arms. But when I do the array the arms seem to messy, so I removed the arms and made it a kind of awkward snowman. (you can see it below in the video)

Step 2:

for loop in the setup()

float x;
float y;
color c;

void setup(){
  size(600, 500);
  background(255);
   for (int i=0; i < 100; i=i+1) {
     display(random(width),random(height), color(random(255), random(255),random(255)));
  }
  }

void display(float x, float y, color c) {
  //Use these parameters to create your graphics
  //x=300, y= 250
  fill(c);
 ellipse(x, y, 100,100); 
 ellipse(x, y+100, 150,100); 
 fill(c);
 ellipse(x-20, y-10, 10,10); 
 ellipse(x+20, y-10, 10,10); 
 fill(c);
 rect(x-5, y+15, 10, 10);
}

When for loop is in the setup(), the picture is static with 100 snowmen. Processing only draws the picture once.

for loop in the draw()

After moving the for loop to the draw(), Processing keeps drawing 100 snowmen and they appear moving.

Step 3:

float[] x = new float[100];
float[] y = new float[100];
float[] c = new float[100];

void setup(){
  size(600, 500);
  background(255);
    for(int i= 0; i<x.length; i++) {
    //Fill the arrays with values for the positions and colors
 x[i] = random(width);
 y[i] = random(height);
 c[i] = color (random(0,255),random(0,255),random(0,255));
    }
  }
  
  void draw() {
  for(int i = 0; i<x.length; i++) {
    //Use your display function and the arrays to show your graphic
      display(x[i], y[i], int(c[i]));
  } 
}
void display(float x, float y, color c) {
  //Use these parameters to create your graphics
  //x=300, y= 250
  fill(c);
 ellipse(x, y, 100,100); 
 ellipse(x, y+100, 150,100); 
 fill(c);
 ellipse(x-20, y-10, 10,10); 
 ellipse(x+20, y-10, 10,10); 
 fill(c);
 rect(x-5, y+15, 10, 10);
}

Having for loop in both setup() and draw() does not make the picture move.

Step 4:

float a=400;
float b=400;
float speedX=5;
float speedY=3;
float[] x = new float[100];
float[] y = new float[100];
float[] c = new float[100];
float[] positionX = new float[50];
float[] positionY = new float[50];

void setup(){
  size(800, 800);
  background(255);
    for(int i= 0; i<x.length; i++) {
    //Fill the arrays with values for the positions and colors
 x[i] = random(width);
 y[i] = random(height);
 c[i] = color (random(0,255),random(0,255),random(0,255));
    }
  }
  
  void draw() {
  for(int i = 0; i<positionX.length; i++) {
    //Use your display function and the arrays to show your graphic
      display(x[i], y[i], int(c[i]));
      x[i]+=random(-10,10);
      y[i]+=random(-10,10);
       if(a > width || a <0){
    speedX = -speedX;
  }
    if(b > height || b <0){
    speedY = -speedY;
  }
}
  }
  
void display(float x, float y, color c) {
  //Use these parameters to create your graphics
  //x=300, y= 250
  fill(c);
 ellipse(x, y, 100,100); 
 ellipse(x, y+100, 150,100); 
 fill(c);
 ellipse(x-20, y-10, 10,10); 
 ellipse(x+20, y-10, 10,10); 
 fill(c);
 rect(x-5, y+15, 10, 10);
}

Question 1: In your own words, please explain the difference between having your for loop from Step 2 in setup() as opposed to in draw().

Having for loop in setup() only makes a static picture, because it is in the setup section, it does not involve any change. Having the for loop in draw() makes changing graphics, because the draw section keeps drawing different graphics and they appear moving.

Question 2: What is the benefit of using arrays?  How might you use arrays in a potential project?

Arrays can store any type of value by an index number representing each value’s position in the array. It is a collection of variables in a single line. It makes coding multiple variables more convenient.

I might use array in my potential waste classification project because it involves several values (different categories of waste) and they are expected to randomly show up continuously. I think array can make the process easier.

Final project proposal-Andrew Xie

1 Shouting machine

Inspired by the artist Xu Zhen’s performing art, the project brought two people face-to-face screams. I think it’s an intuitive way for modern people to reduce stress. So my audience is the people who live in the modern world and need to release the pressure. I think screaming is a very direct way to release pressure. Therefore, the project is designed by using a sound collector to collect the database size of the audience. If the screen exceeds a certain value, the screen will shatter the cup. I want to use a glass to represent people’s anxiety and express it through a crushing Scream (this action can release the pressure). The current difficulty is that the project is a bit thin and we need to add other core concepts. I don’t want this project to cause people to scream, but I want people to release pressure through their voices.

1个

2 The dark night

My idea for the second project is to provide people with dark nights. I was inspired by cartoons. Because some people are more efficient at studying in the dark night, I want to model people who can’t sleep in the dark sky or at night. Therefore, my project is to provide a dark and immersive space with instruments to detect people’s heart rhythm. If the rhythm is very fast, the light in the space will turn red, and if the rhythm reaches a normal level, the color will turn blue. In short, the light in the space will change color according to the speed of people’s heartbeat. The ultimate goal is to let people get spiritual release, and there will be soothing background music in the experience process. The difficulty I encountered was that I didn’t implement the core concept of the project, and if you just sat the audience in a space that didn’t reflect the interaction between people, it wasn’t interactive enough. Determine where to get the heart rate meter.

2

3 Be the traffic light

I have noticed that when pedestrians wait for a red light, they are generally impatient. Many people choose not to wait for a green light and cross the road directly because they have been waiting for a red light for too long. This is very unsafe. Many traffic accidents are caused by pedestrians not complying with traffic regulations. So my project is to make pedestrians willing to wait for the red light. When the red light is on, the pedestrian sign inside the red light does not move, so my idea is that when the red light is on, you can not use the action capture machine to make the pedestrian be the sign in the red light, in other words, the sign in the red light is consistent with the pedestrian action, which can attract the pedestrian’s attention. The difficulty I encountered was a technical problem, and I didn’t know how to implement it.