Cal Poly, Pomona: Programming Game Engines

International Game Developers Association

Jump to: navigation, search

Cal Poly Pomona: Programming Game Engines

 Games Education 

Course


Table of contents

[edit] Teachers

[edit] Instructors

[edit] Guest speakers

  • TBD


[edit] Course Background Information

[edit] Location

[edit] Classification

See: Areas for classifing for your course.

Primary Classification:

  • Game Programming

Secondary Classification:

  • System architecture for real time game environments and simulations


[edit] Student background needed

Undergraduate and Graduate Computer Science Students


[edit] Course Prerequisites

  • 2D/3D computer graphics (theory and programming in OpenGL)
  • C/C++ programming languages
  • Operating systems


[edit] Time periods

10 week quarter - meets for 4 hours per week (two or three times depending on time-slot given course)


[edit] Course Structure

[edit] Course description

2D/3D game engine architectures, constant rate game engines, message-driven game engines, loading and unloading data, memory management, designing for test and for release, handling user input, managing sound, parsing animation files.


[edit] Course learning objectives

  • Understand the software architectures used in building 2D/3D game engines
  • Understand how to handle user input and events
  • Learn how building for test and debug is different than build for release
  • Learn the differences between constant-rate and message-driven game engines
  • Gain experience loading and parsing basic animation files
  • Gain competency in building a 2D and a 3D game engine
  • Design and build a game engine memory manager
  • Use multiple threads in a game engine for audio and sound effects


[edit] Week by week topics

(precise breakdown by week TBD)

  • Data Structures used in Game Programming
  • Computer Graphics Pipeline
  • Handling Input
  • Memory Manager Architecture
  • Audio System Programming
  • Animation System Programming and File Handling
  • Event Handling
  • 2D Game Engine Architecture
  • 3D Game Engine Architecture
  • Building Software for Test/Debug and for Release
  • Message-Driven Game Engines
  • Constant-Rate Game Engines


[edit] Course Materials & Facilities Used

Here you can link to and/or describe books and other materials you used for this course. Feel free to create new pages for each item here if a page for it does not yet exist.


[edit] Books

  • 3D Game Engine Architecture, David Eberly, ISBN 012229064X, December 17, 2004.


[edit] Other materials


[edit] Software (engines, tools)

This could me a mix of external links to software on other servers and links to other wiki pages outlining those tools, which could be useful.


[edit] Syllabus

(link to an uploaded syllabus file or external storage location)


[edit] Slides

(link to each file's storage location)


[edit] Assessment materials

e.g. tests, quizzes, assignment requirements, project requirements


[edit] Digital media used in class

e.g. Video, Multimedia sources, Audio

(link to each file's storage location)


[edit] Case studies

(link to each file's storage location) or each respective wiki page


[edit] Tutorial files

(link to each file's storage location)


[edit] Other materials

(link to an uploaded resources -- e.g. research papers -- or external storage location)


[edit] Analysis of learning methods

[edit] What worked

Please discuss what worked

[edit] What didn't work

Please discuss what didn’t work

Personal tools
Toolbox