Tuesday 10:10-2:15 PM, Room 1P-231, Spring 2011
Prof. Michael Mandiberg
Office Hours: Monday, 1:00-2:30, Tuesday 2:15-2:45, Friday 11:00-12:00
Office: Room 224F, ph 982-2555
Please sign up for a meeting to insure that I will be able to meet with you.
Course website: 351.00mm.org
From the Handbook
A hands-on course for students to learn how to create digital animation for the Internet. This course will cover the technical aspects of digital animation, as well as historical and theoretical topics. Students will create a number of animations, both as standalone pieces, and as components in web pages. Previous experience with web design not required, though helpful.
Our process will have a heavy emphasis on aesthetics, interactivity, and programming. This course is effectively an introduction to visual programming with a focus on game design. We will cover the basics of Flash quickly: Timeline, Symbols, Instances, and Shape & Motion tweens. We will move on to object oriented programming built around objects, methods, properties, etc. We will cover variables, arrays, functions, control structures, user input, and math. The last third of the course will be dedicated to one long project using all of these tools you have learned.
This is not an easy class. It moves fast. We will take a very aggressive and progressive approach towards integrating Actionscript as early as possible. There will be a series of exercises and projects, a mid term examination, and major final project due in the class. In addition, there will be periodic quizzes to keep you on top of the reading. I may or may not tell you when the quizzes are.
We will use blackboard extensively to carry on discussions outside of class. While the focus of the course is the production of directed creative work, there are theoretical and historical readings that will help ground your creative work in a context.
- Achieve competency in web animation.
- Achieve competency in introductory computer programming for animation.
- Develop aesthetic skills with a focus on web animation.
- Gain knowledge of the history of animation.
- Develop a project suitable for inclusion in a student portfolio
- Complete projects on time
- Participate in class discussions, and class critique
- Come to class prepared: do all reading before hand
- Maintain an email account, and browse the web
- Attend field trips
Materials and Texts
Adobe Flash CS4 Professional Classroom in a Book, Adobe Creative Team, Adobe Press, 978-0321573827, $54.99
ActionScript 3.0 for Adobe Flash CS4 Professional Classroom in a Book, Adobe Creative Team, Adobe Press, 978-0-321-57921-8, $54.99
Materials and Supplies: USB thumb drive (provided)
Laptops: If you are planning on using a laptop, get it connected to the Wireless network.
If you have a disability that will affect your coursework, please contact the Office of Disability Services in 1P-101; (718) 982.2510, ODS@csi.cuny.edu and notify the instructor within the first two weeks of class to ensure suitable arrangements and a comfortable working environment.
- Turn your phone off. Each and every use of phone or non-class related electronic communication during class will result in a 1 point grade reduction.
- No food allowed in class or lab at any time.
- No private software is to be brought to lab or loaded onto school computers.
- No games are allowed in lab.
- You may only listen to music during work periods if you use headphones.
- Do not even think about listening to music during lecture/critique, you will be asked to leave the class.
Please be aware that technological failures such as printer errors, erased drives, email issues, computer crashes, network failure, viruses, etc. are not emergencies, they are facts of life. You must structure your workflow in anticipation of such scenarios. Backup, backup, backup! You have been warned.
Please consult the syllabus and/or the related assignment before posing questions that may already be addressed there (i.e. due dates, scope, deliverable, etc)
If your question will take more than two minutes or two sentences to answer, it's not a question, it's a discussion topic. Please bring the topic up in class, or I would be happy to discuss it with you during my office hours.
Emails will not be answered immediately or in the depth that they would in-person. Consequently, they are not the most productive way to communicate with me for matters that require more than a sentence or two to resolve.
Read this post on Design Educator for more on writing a good email
We will be covering a great deal of information at a fast pace, so attendance is a strong determinant of your grade: without attending you will not have the knowledge necessary to successfully complete your assignments, as you will have missed thematic and technical lectures, as well as the presentation of class assignments. Furthermore, College of Staten Island Attendance Policy states that after more than 8 hours of absence (15 percent of the course meeting time) you will be assigned a WU (withdrew unofficially).
Repeated tardiness will be cause for grade reduction: first tardiness is excused, all others result in a 1 point deduction. Perfect attendance will be rewarded with 3 extra credit points. If you know that you will be absent on a date that a project is due, you may submit your work before the deadline or arrange to have another student submit work for you.
Projects are due on the assigned date, at the beginning of class. NO EXCEPTIONS. Each day it is late your grade will be reduced one incremental letter grade. Assignments will not be accepted after one week from the date due without prior approval from the professor.
You are required to revise projects by the date indicated in the syllabus. Finished projects turned in on time will be assigned the grade for the revised project; projects that were incomplete at the original due date will be assigned an average of the two grades.
Online Participation 5 points
Quizzes 15 points
Sunrise/Sunset 5 points
Disappearing 5 points
Sprites for pong 10 points
Midterm Exam 10 points
Matching Game 10 points
Arcade Classics 15 points
Educational Game 25 points
Exercise 1: Sunrise/Sunset
Exercise 2: Disappearing Game
Project 1: Sprites for pong
Project 2: Matching Game
Project 3: remixedClassics
Remixed Arcade Classics or Falling from the sky and creeping up from the depths
Final Project: Educational Game
I will be announcing events/exhibitions/performances/etc in Manhattan throughout the semester. I will award 2 points extra credit for attendance at these events. You will prove to me that you went by turning in your ticket stub or collecting a press release AND writing a one paragraph review of the event/show. I will give up to 8 points extra credit for this. Also included in this category is attendance at any one of the following museums: MOMA (you get in free), MOMA film (you get in free with your CUNY ID), PS1, The New Museum, The Metropolitan Museum, The Whitney, The Guggenheim, The Cooper Hewitt, The Museum of Arts and Design, or any other major art museum. For those in two of my classes, please note that an individual event/museum can only be 'applied' to your grade in one of these two classes.
Week 1. February 1
Thematic introduction to the course: gaming as social practice and academic discourse
Tech Demo: Tweening and timelines, Frames, Keyframes, drawing in Flash, symbol mode, symbol editor (Flash CIB Chapter 2, DF chapters on Flash)
Lecture: short history of animation
Homework: Read Flash CIB Chapters 3 and 4
Reading: Malliet and de Meyer, “The History of the Video Game”
Week 2. February 8
Due: Sunrise/Sunset Exercise
Tech Demo: Symbols, Instances, and Motion Tweening
Lecture: short history of video games, and terminology
Homework: create Sprites for Pong
Reading: AS CIB Chapters 1 and 2
Suggested Reading: Flash CIB Chapter 5 on articulated motion
Week 3. February 15
Due: Sprites for Pong
Tech Demo: Intro to Code (Black Box), Variables, Inserting sprites into Pong
Homework: Insert Sprites into Pong
Reading: AS CIB Ch 3 and 4
Reading: Jesper Juul, “The Game, the Player, the World”
Week 4. February 22
Due: Sprites inserted into Pong
Tech Demo: Making things disappear, symbols, objects, opacity, events, load/unload, classes
Guest: Michele Cynowicz, recent DDM graduate
Homework: Exercise 2, Classes
Reading: AS CIB Ch 5 and 7
Week 5. March 1
Due: Disappearing Game Exercise
Tech Demo: Arrays, Math, and Random Numbers
Homework: Begin work on Quiz Game
Reading: AS CIB Ch 8
Week 6. March 8
Due: creative brief for Quiz Game
Desk Crit: Quiz Game brief
Tech Demo: Combining what we know into a Quiz Game
Homework: Finish Matching Game
Reading:Flash CIB Ch 7
Reading: James Gee, “Semiotic Domains: Is Playing Video Games a "Waste of Time””
Week 7. March 15
Due: Quiz Game
Play Test: Quiz Game
Tech Demo: Sound and Video
Homework: study for midterm exam
Week 8. March 22
Tech Demo: keyboard input, x/y position
Reading: AS CIB Ch 9 and Ch 11
Reading: Selections from Theory of Play, Salen and Zimmerman
Week 9. March 29
Tech Demo: AS3 with sound and video
Guest: Michele Rose, recent DDM graduate
Homework: remixedClassics – start work
Due midweek online: remixedClassics creative brief
Homework: work on remixedClassics
Reading: TBD (on impact detection)
Week 10. April 5
Due: progress on remixedClassics
Desk Crit: remixedClassics
Tech Demo: detecting and handling impact
Homework: finish remixedClassics
Reading: TBA, covering meaningful play and educational games
Week 11. April 12
Play Test: remixedClassics
Lecture: Education games
Final Project Assigned
Homework: Work on Final Project
Suggested Reading: AS CIB Ch 11 on XML
NO CLASS APRIL 18
NO CLASS APRIL 26
Week 12. May 3
Due: all assets, logic tree for game, interface designed, coding begun
Desk Critique: roughs
Homework: Work on Final Project
Suggested Reading: AS CIB Ch 12 on AS3 and Kinematics
Week 13. May 10
Due: alpha version, with functionality in place, some bugs acceptable
Desk Critique/play test: finished drafts and roughs
Week 14. May 17
Due: beta version of Final Project
Critique: Play test, and critique of final Project
Final Exam. May 24
Due: Release Candidate 1 of Final Project with revisions
Create an animation that interpretes some part of the daily dance of the sun, moon, and spinning earth. Your animation must complete at least one cycle, and it must loop seamlessly from the finish back to the start.
Key skills and tools you will use
- drawing skills in Flash
- shape hinting
- tween path
Half of the points for this assignment will be assigned for technical competence. The other half will be assigned for creativity: e.g. WHAT you use those tools TO DO
- repetition & variation
Your assignment is to complete the exercise for AS3 CIB chapter 4, and modify the final result by adding in another vector of complexity. This could be the introduction of variations in the .x/.y placement, size, or alpha of the circles, some aspect of integrating the Tween class, etc. Obviously rotation will not be effective, as circles look the same no matter what the rotation is. You may also explore integrating the rectangle class as demonstrated in the addendum to chapter 4, which is located in the fold on the CD with the work files. 5 points, submit .swf on blackboard before the beginning of class.
Take the version of space invaders posted on the Blackboard discussion forum and modify it to produce a remixed variation on it. Take your inspiration from Cory Arcangel's modified NES games, as well as his collaboration with Paper Rad. You need to modify the variables at the top of the script that control all of the global properties of the game (speed, number of enemies, etc) and all of the gameplay sprites (all enemies, your ship, and the laser, all of which are in the library). The game need not be playable, but it must make us consider what it means to play, and what the assumptions are that we make about playing games.
This is the code to modify.
// ------- Game Settings ------- var shipSpeed:Number = 7;//speed of ship var enemyNum:Number = 8;//number of enemies per row !important! var enemySpace:Number = 40;// space between enemies var maxLives:int = 3;// max number of lives !based on mLives! var yIncrement:int = 30;//amount of y (vertical) to increase per edge detect var bulletSpeed:int = 15;// speed of bullet var enemySpeed:int = 10;// speed of the enemy moving horizontally
Turn in a full .fla and .swf on Blackboard.
Take one of the sample AS3 based remakes of classic arcade games, extract some element of code from them, and use that as the basis of a second game/animation/abstraction. You will encorporate that extracted code with some process/proceedure we have done earlier in the class, for example adding circles randomly to the stage, counting loops, the use of radio buttons, etc. Your goal is to be able to isolate the code and make it work with something else we have done.
Previously, we worked with Space Invaders by modifying the sprites. Here we could work with the same game be extracting the process of firing lasers from the ship at the aliens -- you could then take that mechanism and insert a random number of aliens (you would change the sprite) into the stage that were all placed in random places. This is just *one* example of what you could do.
Attached to the blackboard discussion for the project are a selection of AS3 based versions of classic arcade games. There are many others out there, and you are welcome to find others to work with, though they must be remakes of arcade games and they must be in AS3.
Stage size is up to you. The aesthetics of the game should reflect the 8-bit aesthetic of arcade games.
Checkpoint 1: Friday April 1st, 5pm, 200 word creative brief identifying which game you will be using, and describing *what functionality* you will be taking from it, and *what interventions* you will be making. Feedback will be posted by Saturday AM; I will check blackboard prior to Friday to provide feedback for students who complete this checkpoint earlier than Friday.
Checkpoint 2: Monday April April 5, desk crit in class. Code extracted from original environment and working. Ready for your additions.
Checkpoint 3: Monday, April 12. Critique. Full project complete.
Ferry Schedule, Office Hours Schedule, Study and Social Space schedule