Game Technology
Spring 2007

Tu/Th 2:00pm-3:30pm
RLM 7.120

 


The Legend of Zelda

Instructor: Okan Arikan
  • E-mail: okan 'at' cs.utexas.edu
  • Office: ACES 2.110
  • Office hours: Th 1:00pm-2:00pm in ACES 2.110

TA: Nate Kohl

  • Office hours: Tue: 1:00pm-2:00pm in Painter Micro Lab.

Class Wiki


NFL 2007

!!! Important !!!

This is a preliminary web site. It will evolve throughout the semester. Please make sure you check it frequently.

FINAL PROJECT DEMOS:

  • May 7th (Monday): 3:30pm - 5:50pm in WEL 3.260
  • Submit your games by Sunday midnight using the online system

Course description: 

This class focuses on the technological aspects of game development. We will be covering various algorithms ranging from graphics to artificial intelligence/networking and sound. We will primarily explore the technical aspects of game development. As such, the course will involve many computer science topics, not just computer graphics. This class will have a significant final project where the students will prepare a computer game (more on this below).

Prerequisites:

  • C/C++ programming skills
  • Computer algorithms & data structures
  • Computer graphics (CS354 or CS384G)
  • Talk to the professor if you're in doubt

Grading: (subject to change)

  • % 10 Homework 1 - Due Jan 25th
  • % 10 Homework 2 - Due Feb 1st
  • % 10 Homework 3 - Due Feb 27th
  • % 70 Project
    • % 10 - Proposal - Due Feb 6th
    • % 20 - Milestone 1 - Due March 6st
    • % 20 - Milestone 2 - Due April 6st
    • % 20 - Final demo presentation

 


Super Mario 64

Late Policy:

Unless you have a legitimate excuse, you will loose 5 pts for each day your homework of final project is late. For example, your grade in this class is evaluated over 100. If you turn in your deliverable one day late, then your maximum grade in the class will be 95. If you turn in two days late, your maximum grade will be 90.

*** Code of conduct: ***

Every student must read and agree with the code of conduct outlined at http://www.cs.utexas.edu/users/ear/CodeOfConduct.html. You must report any piece of written material (text or software) that comes from someone other than yourself. Note that you are not allowed to use any software that overlaps with the objectives of homework and projects. There will be a discussion of policies related to group projects and homework in the class and this web page will be updated accordingly.

Final project:

You will create a game of your own design and implementation. You will build your game on a known game engine (to be announced) in C++.

Similar to professional game development, you will have hard deadlines scattered throughout the semester. Each of these deadlines (or milestones) will measure your progress towards meeting your requirements and finishing your game. Expect a steady workload for the entire semester. This is not a class where you can implement your project one week before the end of the semester.

Both the homework and the project will be built using G3D graphics library. This library provides low level graphics routines and should make your life easier.

Template:

We prepared a template Visual Studio project that starts G3D library and draws a simple texture mapped quad. You can download this template from here. You are encouraged to start from this template for your homework as well as your project.

Here're the instructions:

  1. Unzip the template.zip

  2. Double click template\template.sln to start the Visual Studio. Visual Studio 2005 is installed on the computes in the painter labs. You can also download the Visual Studio Express for free from Microsoft

  3. You can just hit F5 to build/execute to template (assuming you haven't changed the Visual Studio settings), or go to "Build - Build Solution"

Submission Instructions:

Detailed submission instructions are here.

Topics:

Some of the topics that we will cover in class include:
  • Interactive systems
  • Graphics
    • Texture / Environment / Shadow mapping
    • Shading models
      • Light maps
      • Bump maps
      • Multitexturing
    • Multi-pass rendering
    • Occlusion culling
    • Graphics hardware / vertex / pixel shaders
    • 2D Games / billboards
    • Meshes
    • Terrain generation
    • Level of detail
    • Octrees, Kd-trees, BSP trees
    • Visibility
  • Animation
    • Keyframing, motion capture
    • Character rigging
    • Inverse kinematics
    • Physics, simulation
    • Particle systems
    • Collision detection / response
  • Artificial intelligence
    • Finite state machines
    • Decision trees
    • Rule based systems
    • Fuzzy logic
    • Neural nets
    • Path planning
  • Networking
    • Dealing with lag / network failures
  • Sound
  • Issues
    • Design
    • Balance
    • Cheating
    • Testing
    • Business aspects


Gran Turismo


Warcraft 2


Defender

The class projects:

Luminiferous - Daniel Galvan
Reversi - Dan Shamlian
Cubes on a Plane - Ken Pfile
GaeaGun - Adrien Mayorga
Cabbage Farmer - Sean Reid
Duel - Kyle Beck
Gravity Control - Steven Klein
Phake III Arena - Matt Strange
Positioning is Everything - Clif King

Software:

References:

Books:

Resources:


Okan Arikan
Last updated: 5/3/2007