Today was the last day of Digital CUrrents. During the morning, we practiced our presentations twice. It was cool to see everyone's apps. Some of them were hilarious, and some of them were incredibly artsy! Then we actually presented after lunch and more ping-pong. Now we're sending thank-you emails and taking a survey.
I guess what I'm getting around to is that I'm going to miss the camp. :-( I won't miss getting up really early while it's still dark out (just kidding - about the dark) but I will miss talking and rotoscoping and joking around and playing spoons and trying to reduce compiler errors.
Thanks, everybody! Have a good summer and hopefully see you someday. (Fairview students can ignore this melodrama.)
Save the world with these super links: freerice.com, thehungersite.com, wwf.org
Bye!
Friday, June 19, 2009
Thursday, June 18, 2009
6/18/09
2nd to last day.
Wow.
I've learned so much, and everyone I've gotten to know is incredibly nice. It's hard to believe it's almost over. Only the presentation left...
Today we published our projects to HTML. If you ignore the error messages that pop up, mine works fine.
See you tomorrow for the fantabulous Friday Finale!
Wow.
I've learned so much, and everyone I've gotten to know is incredibly nice. It's hard to believe it's almost over. Only the presentation left...
Today we published our projects to HTML. If you ignore the error messages that pop up, mine works fine.
See you tomorrow for the fantabulous Friday Finale!
Wednesday, June 17, 2009
6/17/09
Back to bullets! It's a nice way to organize thoughts...
- Today we had an epic ping pong battle. I need to work on getting the ball to hit the table.
- I fixed the program so it works fine now. I also improved all the pictures and added some frames. I hope my game is fun for other people, too...
- Tomorrow is Thursday... and after that is Friday. The LAST day of Digital CUrrents. :-(
Here's another picture for today:
Tuesday, June 16, 2009
6/16/09
Google again.
Today I managed to do the (probably) most difficult part of the final project: ping pong! No, I meant programming. I finished the programming bit (well, with lots of help) and it worked, but then I had to go and try to improve it. So it has errors again. But I think I can fix these!
About the ping pong: after lots of practice and almost hitting several people, I think I improved.
Here's another animal:
Today I managed to do the (probably) most difficult part of the final project: ping pong! No, I meant programming. I finished the programming bit (well, with lots of help) and it worked, but then I had to go and try to improve it. So it has errors again. But I think I can fix these!
About the ping pong: after lots of practice and almost hitting several people, I think I improved.
Here's another animal:
Monday, June 15, 2009
6/15/09
Today was at Google!
The people who work here seem to like having fun (Ping pong, Foosball, Rock Band, the climbing wall, ...). I hope that I can work someplace like this when I'm older. The kitchen area is really cozy. Overall, it feels sort of like being at home, except with a lot more games.
Project-wise, I finished all the non-game frames (the easy part). Tomorrow I'll attack the difficult part: the programming.
Here's a picture. Can you guess what animal this is?
The people who work here seem to like having fun (Ping pong, Foosball, Rock Band, the climbing wall, ...). I hope that I can work someplace like this when I'm older. The kitchen area is really cozy. Overall, it feels sort of like being at home, except with a lot more games.
Project-wise, I finished all the non-game frames (the easy part). Tomorrow I'll attack the difficult part: the programming.
Here's a picture. Can you guess what animal this is?
Final Project Specification
Manifesto:
The purpose of this project is to teach the viewer about endangered species and projectile motion. The format of the game is the following: there are six endangered animals presented. By specifying the angle of the ramp and the initial velocity, the viewer must launch each animal off a ramp and into its correct habitat (e.g. rainforest, desert, deciduous forest) to win. Information about endangered species is integrated into the game: without learning about each species that is presented, the viewer does not know into which habitat each animal must go and thus cannot win the game. Thus, the viewer learns to recognize each species and its environment. Likewise, an understanding of projectile motion makes it easier for the viewer to land the animals where they are supposed to go. An explanation of projectile motion is incorporated into the game, but only as a side note: if the viewer wants to understand more about the equations of projectile motion, he or she can go to this information page. This information page will explain how one can calculate the position of a projectile at time t given its initial velocity and angle. This includes some trigonometry and physics, so if the viewer has not yet learned the math necessary to understand the equations, he or she does not need to look at this information page in order to win the game.
Art:
I drew all the images of animals and settings myself, using photographs from the Internet for reference. I used Photoshop to draw the pictures. The purpose of the art is to make the concepts more accessible. The grainy, cartoony pictures of the endangered species make the animals look more concrete and close to the viewer. The viewer feels more empathy for these somewhat anthropomorphized versions of the endangered species. Furthermore, the cartoony style gives the game more appeal. The cartoony animals and landscape look more fun and accessible than photographs of real animals and places. Overall, I want to use the art to convey the message that many strange, unique animals are endangered because of human activities, but that an individual can make a difference. This is why I plan to include a frame that explains what the viewer can do to help endangered species.
Applied Math:
My application deals with the ideas of slopes and projectile motion. I will explain both concepts in a “math explanation” page. Slope is rise over run, or change in y divided by change in x. The slope of the ramp in this application will determine the launched object’s initial angle. If the angle is too large (too near 90°), the object will be launched very high, but not very far. If the angle is too small (too near 0°), the object will be launched very low and not very far. Thus, by experimenting with the application, the viewer can empirically discover the optimal angle, which is 45°. Projectile motion deals with the path, or trajectory, that an object takes when thrown up in the air. An initial force gives the object a starting velocity, but from then on, the only force acting on the object is gravity. Therefore, as the object continues to move forward, its trajectory describes a perfect parabola: the object first continues to rise, more and more slowly; it stops for a moment; then it falls toward the ground. The position of the object can be described with an x-coordinate and a y-coordinate. Along the x-axis (parallel to the ground), the object moves at a constant rate, so x = v0cos(a)t, where v0 is initial velocity and t is time elapsed. Along the y-axis (vertically), the object’s velocity changes, so its position can be described with the equation y = v0sin(a)t – 4.9t2, where v0 is initial velocity, a is initial angle, and t is time elapsed.
Programming:
The program I will use for this project is not very different from that of the original starter project. The major changes I will make are to add different frames (along with buttons to navigate between them) and to have several objects launched that each have their own destination. The frames will include pages for introduction, instructions, credits, and information about endangered species and projectile motion, along with “win” and “lose” frames. The several objects that will be launched will be the different animals. Each animal will have to be launched into a certain area of the stage (defined by x- and y-coordinates) in order to win. I will probably code this using “if” statements to define the conditions necessary to go to the “win” or “lose” pages (e.g. if this animal lands in this area, go to the “win” frame). I will probably use a random number generator in order to choose the next animal to be launched, and I will use a dynamic text box to display on the stage the name of the next animal, so that the viewer knows where to launch the animal. The math aspect, of projectile motion, will stay the same:
functX=vel_txt+"*cos("+angleTemp.toString()+")*t";
functY="-("+vel_txt+"*sin("+angleTemp.toString()+")*t - 4.9*t^2)";
These two lines of code are the equations described above in the “Applied Math” section: x = v0cos(a)t and y = v0sin(a)t – 4.9t2.
The purpose of this project is to teach the viewer about endangered species and projectile motion. The format of the game is the following: there are six endangered animals presented. By specifying the angle of the ramp and the initial velocity, the viewer must launch each animal off a ramp and into its correct habitat (e.g. rainforest, desert, deciduous forest) to win. Information about endangered species is integrated into the game: without learning about each species that is presented, the viewer does not know into which habitat each animal must go and thus cannot win the game. Thus, the viewer learns to recognize each species and its environment. Likewise, an understanding of projectile motion makes it easier for the viewer to land the animals where they are supposed to go. An explanation of projectile motion is incorporated into the game, but only as a side note: if the viewer wants to understand more about the equations of projectile motion, he or she can go to this information page. This information page will explain how one can calculate the position of a projectile at time t given its initial velocity and angle. This includes some trigonometry and physics, so if the viewer has not yet learned the math necessary to understand the equations, he or she does not need to look at this information page in order to win the game.
Art:
I drew all the images of animals and settings myself, using photographs from the Internet for reference. I used Photoshop to draw the pictures. The purpose of the art is to make the concepts more accessible. The grainy, cartoony pictures of the endangered species make the animals look more concrete and close to the viewer. The viewer feels more empathy for these somewhat anthropomorphized versions of the endangered species. Furthermore, the cartoony style gives the game more appeal. The cartoony animals and landscape look more fun and accessible than photographs of real animals and places. Overall, I want to use the art to convey the message that many strange, unique animals are endangered because of human activities, but that an individual can make a difference. This is why I plan to include a frame that explains what the viewer can do to help endangered species.
Applied Math:
My application deals with the ideas of slopes and projectile motion. I will explain both concepts in a “math explanation” page. Slope is rise over run, or change in y divided by change in x. The slope of the ramp in this application will determine the launched object’s initial angle. If the angle is too large (too near 90°), the object will be launched very high, but not very far. If the angle is too small (too near 0°), the object will be launched very low and not very far. Thus, by experimenting with the application, the viewer can empirically discover the optimal angle, which is 45°. Projectile motion deals with the path, or trajectory, that an object takes when thrown up in the air. An initial force gives the object a starting velocity, but from then on, the only force acting on the object is gravity. Therefore, as the object continues to move forward, its trajectory describes a perfect parabola: the object first continues to rise, more and more slowly; it stops for a moment; then it falls toward the ground. The position of the object can be described with an x-coordinate and a y-coordinate. Along the x-axis (parallel to the ground), the object moves at a constant rate, so x = v0cos(a)t, where v0 is initial velocity and t is time elapsed. Along the y-axis (vertically), the object’s velocity changes, so its position can be described with the equation y = v0sin(a)t – 4.9t2, where v0 is initial velocity, a is initial angle, and t is time elapsed.
Programming:
The program I will use for this project is not very different from that of the original starter project. The major changes I will make are to add different frames (along with buttons to navigate between them) and to have several objects launched that each have their own destination. The frames will include pages for introduction, instructions, credits, and information about endangered species and projectile motion, along with “win” and “lose” frames. The several objects that will be launched will be the different animals. Each animal will have to be launched into a certain area of the stage (defined by x- and y-coordinates) in order to win. I will probably code this using “if” statements to define the conditions necessary to go to the “win” or “lose” pages (e.g. if this animal lands in this area, go to the “win” frame). I will probably use a random number generator in order to choose the next animal to be launched, and I will use a dynamic text box to display on the stage the name of the next animal, so that the viewer knows where to launch the animal. The math aspect, of projectile motion, will stay the same:
functX=vel_txt+"*cos("+angleTemp.toString()+")*t";
functY="-("+vel_txt+"*sin("+angleTemp.toString()+")*t - 4.9*t^2)";
These two lines of code are the equations described above in the “Applied Math” section: x = v0cos(a)t and y = v0sin(a)t – 4.9t2.
Friday, June 12, 2009
Thanks
This will seem rather random, but I wanted to thank Ian, Ryan, John, Yulia, Carolyn, Graham, and Randall. You've stayed helpful and entertaining, even when we kept staring at our computer screens while you tried to talk to us. (We were listening.) Thanks for everything you've done! :-)
Subscribe to:
Comments (Atom)
