WPI Worcester Polytechnic Institute

------------------------------------------

Technical Game Development I

IMGD 3000
A-term 2014

This course teaches technical Computer Science aspects of game development, with the focus of the course on low-level programming of computer games. Topics include 2D and 3D game engines, simulation-type games, analog and digital controllers and other forms of tertiary input. Students will implement games or parts of games, including exploration of graphics, sound, and music as it affects game implementation.

Recommended background: CS 2303

Objectives

(See the final games created by the class.)

Info

Grading

Slides

Projects

Timeline

Samples

Course Information

People

Professor: Mark Claypool
email: claypool at cs.wpi.edu
office hours: Mo 12-1pm, Tu 10-11am, Fr 10-11am
place: Fuller Labs, room B24b
phone: x5409

Teaching Assistant: Caitlin Malone
email: camalone at wpi.edu
office hours: Tu 1-2pm, We 1-2pm, Th 3-4pm, Fr 10-11am
place: Fuller Labs, room A22
phone: -

Senior Assistant: Timothy Calvert
email: tncalvert at wpi.edu
office hours: Mo 11-12, Tu 4-5, We 12-1, Th 12-1
place: Fuller Labs, room A22
phone: -

Email lists (please use appropriately):
Prof + Assistants: imgd3000-staff at cs.wpi.edu
Class: imgd3000-all at cs.wpi.edu

Dragonfly question-answer forum (for project-related development questions):
http://alpheus.wpi.edu/dqa/

Time and Place

Days: M, Th
Time: 1 - 2:50pm
Place: Salisbury Labs (SL), Room 406

Book

Mark Claypool. Dragonfly - Program a Game Engine from Scratch, Interactive Media and Game Development, Worcester Polytechnic Institute, 2014.

The text will be available for purchase the first day of class.

There are other books on game engines that may be of interest to the aspiring developer. A few of those are:

You should own a really good book (or two) on C++ programming:

Topics

Here is the list of topics covered in this course (not necessarily in order of appearance):

Info

Grading

Slides

Projects

Timeline

Samples

Grading Policy

Breakdown

Final grades will be computed as follows:

Project 1Catch a Dragonfly10%
Project 2Dragonfly (Egg, Naiad, Dragonfly)50%
Project 3Dragonfly Spawn (Plan, Alpha, Final)25%
QuizzesAll, minus lowest grade15%

The bulk of the course grade involves programming. This can be done on either Windows, MacOS or Linux but must be in C++. C++ will not be taught (although various C++ techniques will be re-introduced), and it is assumed students have had signficant exposure to C++ before starting this course. The grading policy for each project is provided at the time of the assignment. In general, for each project there is a basic objective for the majority of the assignment points. There may be an extended objective for demonstrating additional work and understanding. Projects, including all data and source code, as appropriate, are to be turned in online as specified in the writeups.

The first two projects (and any sub-projects) are to be done individually, without partners. The third project, developing a game using your own engine, must be done in groups of exactly two (no more, no less).

There will be a quiz every class. These are designed to test important class concepts from the previous class(es), especially concepts that may not have been adequately demonstrated in the programming projects. Quizes are closed book and closed notes, unless otherwise indicated. All quizes have an equal weight, except for the lowest score which is dropped.

Final grades reflect the extent to which understanding of the material has been demonstrated and the assigned projects completed. The base level grade is a "B" which indicates that the basic objectives on projects and exams have been met. A grade of an "A" indicates significant achievement beyond the basic objectives. A grade of a "C" indicates not all basic objectives were met, but work was satisfactory for credit. No incomplete grades are assigned unless there exist exceptional, extenuating circumstances. Similarly, no project dealine extensions or makeup exams are given unless there are exceptional, extenuating circumstances.

Late Policy

Exams are done, and due, in class. Projects are due online at 11:59pm on the due date, unless otherwise noted. Late projects are accepted up to two days late, with the weekend (Saturday plus Sunday) counting as one day. Any late project is penalized 10% of the total assignment value per day, unless otherwise noted.

Class Conduct

This course is intended for serious students. Participants are expected to adhere to all rules of professional behavior. It is to be emphasized that knowledge of material and professional behavior are tied together; failure in one of them negates any excellence in the other.

All work is to be done individually, unless otherwise specified. Students are encouraged to discuss their program designs, bugs and and issues with each other, but are expected to do the actual programming by themselves.

Any breach of professional ethics as evidenced, for example, by copying exams or code for the projects, downloading code from the Internet, cooperating more than just by discussions in study groups, misusing computer resources, or using outside help of any kind, is considered adequate reason for an NR in the course and a report to the Dean of Students. Refer to the official WPI statements on Academic Honesty for details. Remember this warning - any breach of ethics earns an NR and is reported. When in doubt about possible "grey" areas, ask!

Info

Grading

Slides

Projects

Timeline

Samples

Slides

Slides from class lectures and other in-class materials are available shortly before or after they are presented.

Administrative pdf pptx
Chapter 1 - Introduction pdf pptx
Chapter 2 - Setup pdf pptx
Chapter 3 - Tutorial pdf pptx
Chapter 4 - Engine pdf pptx
Artificial Intelligence pdf pptx
Miscellaneous pdf pptx
Performance pdf pptx
Review - pptx
Scene Management pdf pptx
Unit Testing pdf pptx

Info

Grading

Slides

Projects

Timeline

Samples

Projects

Projects and due dates are placed here as they are defined.

Info

Grading

Slides

Projects

Timeline

Samples

Samples

This section has any samples discussed in class, exam preparation material, tutorials or any other demonstration-type class materials.

Dragonfly Web page

DQA - Dragonfly question-answer forum

Info

Grading

Slides

Projects

Timeline

Samples

[Return to the WPI Homepage] [Return to Mark Claypool's Homepage]


Mark Claypool (claypool at cs.wpi.edu)