ECE4893A/CS4803MPG: Multicore and GPU Programming for Video Games

Fall 2007

Homework #2: Direct3D First Person Shooter

Due: Thursday, Oct. 11 at 23:59:59 (via T-square)

New stuff:

Late policy: The homework will be graded out of 100 points. We will accept late submissions; however, for every day that is it is overdue (including weekend days), we will subtract 20 points from the total. For instance, it you turn it in late but turn it in by Friday, Oct. 12 at 23:59:59, we will take off 20 points. (We understand that sometimes multiple assignments hit at once, or other life events intervene, and hence you have to make some tough choices. We'd rather let you turn something in late, with some points off, than have a "no late assignments accepted at all" policy, since the former encourages you to still do the assignment and learn something from it, while the latter just grinds down your soul.)

We set the due date for Thursday since making a homework be due at midnight on Friday seemed cruel.

Staring with Prof. Lee's example Direct3D code as a base, write a simple "first person shooter" game with the behaviors described below:

Concerning the adaptation of Prof. Lee's code: Your game does not need to have...

Discussion board: We have set up a "HW #2" discussion board where students can discuss the homework and in particular ask questions that the professors, TA, and other students can help answer. (Try to avoid posting significant chunks of code on the discussion board; those are probably best directly e-mailed to the professors and the TA.)

Deliverables: Package everything needed to compile and run your game (3D data file, textures, code, etc.) and upload them to T-square as a zip file, StuffIt file, or gzipped tar file. Include "HW2" and as much as possible of your full name in the filename, e.g., HW2_Aaron_Lanterman.zip. (The upload procedure should be reasonably self explanatory once you log in to T-square.) Be sure to finish sufficiently in advance of the deadline that you will be able to work around any troubles T-square gives you to successfully submit before the deadline. If you have trouble getting T-square to work, please e-mail your compressed file to lanterma@ece.gatech.edu, with "MPG HW #2" and your full name in the header line; please only use this e-mail submission as a last resort if T-square isn't working.

When you submit your homework, please tell us an approximate number of hours you spent working on it, as well your thoughts on the homework, particularly suggestions for improving it in the future. (If you don't have any suggestions, that's OK, just tell us an approximate number of hours.) This will help us with future offerings of the class.

Ground rules: You are welcome to discuss high-level implementation issues with your fellow students, but you should avoid actually looking at one another student's code as whole, and under no circumstances should you be copying any portion of another student's code. However, asking another student to focus on a few lines of your code discuss why a you are getting a particular kind of error is reasonable. Basically, these "ground rules" are intended to prevent a student from "freeloading" off another student, even accidentally, since they won't get the full yummy nutritional educational goodness out of the assignment if they do.