CS 487: Software Aspects of Game Development (Fall 2013)


Dr. Michael Wainer
Rm 3042 Faner  Hall, 3-6039
Office Hrs: MW 9:30-10:30, 3-4 Th 9:30-11:30

Teaching Assistant:

Kavya Sikharam
Faner 3127, Phone 3-6035
Office Hrs: M 4-6 in 2102 Lab; F 3-5

See SIU online for readings and assignments

Course Description:

Computer games have enjoyed increasing popularity both as entertainment as well  as teaching and research tools (serious games). Producing sophisticated video games requires many talents, this course focuses primarily on the software aspects of game development.  Software aspects include software environment and process, teamwork, system architecture and design. Additionally, underlying technical details may include topics such as support for graphics modeling and rendering, physics, collision detection, artificial intelligence, audio support, as well as multiplayer/networking gaming techniques.  In addition to purely technical aspects, this course will also touch upon other related topics such as the history and concepts of video gaming and game design as well as some of the production and business issues of making games.
Programming exercises/projects including group projects will be required for this course. Our primary language of instruction will be Java.

Prerequisites:  CS330  with a grade of C or better.


Introduction to Game Development, 2nd Edition
Edited by Steve Rabin, Charles River Media, 2010

Supplemental materials will also be referred to as needed.


Introduction to Video Games and Design
Software Tools & Practices
Game Implementation                                                                                     
  Technical Foundations and Future Directions                                                   

Game Design and Development  is best accomplished not through a sequential process but an iterative one. Likewise you may expect that we will revisit various topic areas as we progress through the semester.

General Policies

Make-ups and incompletes will be given only in extreme circumstances. You may feel free to discuss general concepts related to programming problems but the actual solutions to the specific problems should be worked out individually or within your group if given a group assignment.

Course Requirements (tentative distribution)

Failure to turn in homework or programming assignments can drastically lower your grade. Please do these assignments conscientiously. Resolve any issues pertaining to the grading of an exam/assignment within 1 week after it is returned. All students should read the Departmental Policies on Academic Dishonesty.

The University has collected other useful information for this semester in this attachment. Also review the Emergency Response Guide. More information is available at SIUC's Department of Public Safety .