WPI Worcester Polytechnic Institute

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

Technical Game Development I

IMGD 3000
A-term 2013

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 10-11am, Tu 11-12pm, Th 3-4pm
place: Fuller Labs, room B24b
phone: x5409

Teaching Assistant: Junjie ("Homer") Gu
email: homergu.imgd@gmail.com
office hours: Mo 3-4pm, We 1-3pm, Fr 2-3pm
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

Time and Place

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

Book

Mark Claypool. Dragonfly - Program a Game Engine from Scratch, Version 2, Interactive Media and Game Development, Worcester Polytechnic Institute, 2013. Information online at: http://dragonfly.wpi.edu/book/

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%
ExamsMid-term and Final15%

The bulk of the course grade will involve 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 will be 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, will 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, should be done in groups of exactly two (no more, no less).

There will be two in-class exams. These are designed to test important class concepts that may not have been adequately demonstrated in the programming projects. The first exam is roughly mid-way through the term, and the second is on the last day of the term. The second exam is non-cumulative. There is a remote possibility of a pop quiz for which no advance notice will be provided. Exams will be closed book and closed notes, unless otherwise indicated. The majority of each exam will cover concepts presented in class with a few questions testing additional understanding and insight.

Final grades will reflect the extent to which understanding of the material has been demonstrated and the assigned projects completed. The base level grade will be 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 will be 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 expected to be done individually, unless otherwise specified. As such, students are encouraged to discuss their work with each other, but are also expected to do the work 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. 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
Scene Management pdf pptx
Performance Tuning pdf pptx
Miscellaneous pdf pptx
Review 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, links to relevant sites or any other demonstration-type class materials.

The Dragonfly Web Page

Topics for exams:

Info

Grading

Slides

Projects

Timeline

Samples

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


Mark Claypool (claypool at cs.wpi.edu)