COMP 3501

COMP 3501


Nov 8: To see how to multiply quaternions, use the formula on slide 12 of the quaternions slides. For the quaternion question of assignment 5, the important thing is the structure of the two quaternions, with less emphasis on the quaternion product.

Oct 22: Sign up for a slot to meet for your project midterm demo. All presentations will be in the game lab at the designated times. Please arrive ten minutes before your slot starts so that you can get logged in and set up. One demo per group.

Sept 2: Welcome to 3501! If you are interested in getting a head start, install XNA 3.1 on your computer and try out the starter kits.

For some advice on using XNA with Visual Studio 2010 (or other environment, for that matter) check out this post on Nick Gravelyn's blog.

Final Exam

The final exam is at 9:00 on December 14. You may bring a sheet of notes with you (one piece of paper, both sides) to refer to during the exam. You may also bring a calculator, though you do not necessarily need one.

You might want to look at last year's final to get some practice and some idea about the type of questions. This year's exam will have more pseudocode than last year's did.


The midterm is slated for Wednesday, Nov 3, in class. It will cover material up to the end of the lecture of October 25.

To help in studying, you may be interested to see last year's midterm. The best way to use it is to study a lot, then make a closed-book attempt at this midterm to self-evaluate.

The midterm will cover material up to halfway through the "Procedural" slides, just to the end of Perlin noise (i.e., not including cellular texture).

You may bring one sheet of notes to the midterm as a memory aid (one standard-sized piece of paper, both sides).


Introduction to the course

Getting started in XNA (sprites)


Geometry and the Z-buffer


Some more math including Quaternions

The Perspective transformation and a camera

Shaders overview

Illumination, esp. the 3-term lighting model

Texture mapping

Procedural texture synthesis

Terrain synthesis (with bonus material on L-systems)

Screen-space special effects

Particle systems

Linear physics

Rotational physics (rigid-body motion)

Impulse model of collision resolution


Code Examples

The "Martian face"

The camera and asteroid field

Illumination with the 3-term lighting model

Texture mapping demo

Screen-space special effects: download the Camera demo
and look at the image.fx file, which contains pixel shaders for SSE.

Particle system demo

Partial submarine demo (no torque)


Assignment 1: A tiny game. Due Sept 22.

Assignment 2, part one: vector math. Due in class Sept 29.

Assignment 2, part two: A cannon. Due Sept 29.

Assignment 3: Firing the cannon (transformations). Due Oct 6.

Assignment 4: Pixel and vertex shaders (transformations and lighting). Due Oct 20.

Assignment 5, part one: Quaternions and lighting review. Due in class Nov 10.

Assignment 5, part two: A screen-space special effect. Due Nov 10.

Assignment 6: Particle systems. Due Nov 17.

Assignment 7: Physical simulation (bonus assignment). Due Dec 2.


Project description

Project proposal deadline: Friday, Oct 1. Hand in through WebCT. All that is needed is a 1-2 page description of the basic project idea, plus a list of team members and a planned timeline for when you will have completed the subtasks of the overall project.

Project presentations: During class time in the game lab on Monday, Nov 29, and Wednesday, Dec 1. Sign up for a lot in class or send me an email to get one of the remaining slots.

Project Presentation Schedule

Monday, Nov 29

Wednesday, Dec 1


Instructor: Dr. David Mould

Office: 5346 Herzberg

Office Hours: specific hours TBA or by appointment

Email: mould at scs

TA email: TBA


Last updated Nov 25, 2010