Home | Courses | Research | Projects | Links | Robocode | Imagine Cup | Serious Games | CGAMES2006 | Contact

Games programming

Dalek World

The games programming course is divided into 2 semesters. Semester 1 is called Programming Game Worlds and Semester 2 is called Programming Game Behaviour.

Assignment Results

Student Assignment 1 Assignment 2 Overall CA
C03620476 A A A
C03446824 B B B
C03333388 A A A
C03592375 B B B
D05103687 B A A
D03102632 A A A
C02774356 A A A

 

Semester 1 - Programming Game Worlds

  1. Introduction
    1. Introduction lecture
    2. Games Hardware Lecture
    3. Introduction Lab
    4. DalekWorld Source Code
  2. Game Mathematics & DirectX
    1. Introduction to game maths Lecture
    2. DirectX Quick Reference
    3. Introduction to game maths Lab (introduction to DirectX programming) & Solution
    4. Teapot Wars Lab 1 & Source Code & Solution
    5. Game Architecture using Win32 and DirectX Lecture
    6. Teapot Wars Lab 2 & Solution
  3. Drawing in 3D
    1. Vertex Buffers, Index Buffers & Texturing
    2. Textured Cube Example
    3. Self Test 1
    4. Projectiles Lab & Source Code
    5. Building a level loader
    6. Asset management with the STL, singletons and Lazy loading
    7. Ammo Pickups code
    8. Programming a skybox lab & Source Code & Solution
  4. Games Programming
    1. Programming a camera, rays and planes
    2. Camera model code
    3. Programming an RTS camera Lab & Solution
    4. Ray Tracing Lecture
    5. Picking Solution
  5. Newtonian physics - steering
    1. Introduction to physics
    2. Physics programming lab & Code
  6. Particle systems (explosions, rain, snow)
    1. Particle Systems Lecture
    2. Particle Systems Example
    3. Particle systems lab
  7. Terrain Rendering
    1. Terrain rendering lecture
    2. Terrain rendering code
  8. 3D Audio

Semester 2 - Programming Game Behaviour

  1. Introduction
    1. Introduction Lecture
  2. Perception
    1. Collision Detection 1 Lecture
    2. Collision Detection 1 Lab
    3. Mostly working point mesh collision detection code
    4. Collision Detection 2 Lecture
    5. Ray Triangle Problem
    6. Collision Detection 2 Lab
    7. Collision Detection 2 Lab Source Code
    8. Collision Detection 3 Lecture
    9. Collision Detection 3 Lab
    10. Collision Detection 3 Lab Source Code
  3. Steering & Path finding
    1. A * Pathfinding 1
    2. A * Pathfinding Lab 1
    3. Implementing the A* Lecture
    4. A* Pathfinding Lab 2 & Code
    5. Path Smoothing Lecture
    6. Path Smoothing Lab & Code
    7. Skinned Mesh Lecture (developed by Michael McKenna, Viacheslav Filonenko, Tang Ke)
    8. Skinned Mesh Lab (Developed by Michael McKenna, Viacheslav Filonenko, Tang Ke)
    9. Audio Lecture (Developed by Anthony Clinton, David Markey and Marc O' Neil)
    10. Audio Lab (Developed by Anthony Clinton, David Markey and Marc O' Neil)
  4. Agents
    1. State Machines

Assignments

Assignment 1

Assignment 2

Past Papers

Summer 2005/2006

Supplemental 2005/2006

Papers & Other Stuff Based on the Coures

Learning Games Programming With Dalek World

An Optimised Implementation of the A* Algorithm using the STL

Powerpoint slides for the paper

Our A* Implementation (requires the Microsoft DirectX SDK and Visual Studio 2003/2005 to compile)

CGAMES06 in Dublin

Serious Gordon - A Food Safety Training Simulation using the Source Engine

Last Updated: 26 September 2007
Contact me at: bryan.duggan@dit.ie