This course emphasizes the hands-on development of computer games, as well as the study of computer games from the perspectives of technology, science, and art.
Designing good computer games requires knowledge of
I hope to cover (at least) the following general topics during the course
There is no required text for the course, but the recommended texts should prove helpful as references for many of the technical issues. Occasionally, I will also assign some readings on game design and some history of computer and video games. In addition to covering these subject in class, you should try to include the concepts they cover in our class discussions and your work on the projects. You will be responsible for all assigned reading, and you should particularly use what you learn from the readings to help guide your final project design and implementation.
Projects will involve the implementation of all or part of a computer program, using principles of design covered in class, and using modern tools for game development.
Students will complete final class projects in groups of up about four people. Each group will create a complete computer game, generating a concept, design, storyboard, software specification, implementation, documentation, and system evaluation. We will organize these groups using standard industry practices for software development. I will be the project leader for each group, and we will have weekly group meetings (no more than half an hour per week). During meetings we will set goals and milestones, estimate efforts, allocate resources, and update plans, all with the ultimate goal of producing a significant piece of well-organized and documentd software that also happens to implement a really fun game!
Final projects will be demonstrated during the last week of class. They will also be part of the Computer Science Festival at the end of the Spring 2004 semester.
Quizzes will provide me with an additional way to monitor and evaluate your grasp of the subject material as an individual. There will be no final exam.
I will generally do my grading on a 100 point scale. Points do not map directly to letter grades until everything is tallied at the end of the semester. However, as a rough guide, I generally consider 90 points or more to be ``A'' work, 80 points or more to be ``B'' work, 70 points or more to be ``C'' work, and 60 points or more to be ``D'' work.
I also hold the philosophy that A's are reserved for those who demonstrate a real mastery of the subject matter, in addition to performing superior work on all of the assignments. Doing an adequate job on all of the assignments alone will likely earn you an A-minus. To receive an exceptional grade, you should do exceptional work, finding ways to go beyond my expectations for the basic project requirements. For every assignment, I will be inclined to reward extra effort, innovation, industriousness, etc.