CSC 481 - Game Engine FoundationsCatalog Description:
In this course we will examine some of the components of a commercial strength game engine. We will survey different genres of games, using some of the unique design challenges each genre provides as a motivation for an in-depth examination of the affordances games engines provide for designing games of that genre. We will cover topics ranging from data structures, resource management, game loops and logical timing systems, scripting, error logging, and networking. A sequence of programming assignments will lead students through the implementation of their own game engine, which they will use to design their own game.
- Lecture: 3 hours
Restrictions: CSC Majors Only
Coordinator: Dr. David Roberts
Textbook: Game Engine Architecture
- Develop a conceptual framework and vocabulary for computer game engines, their components, and designs as well as an understanding the role of a game engine in the game design process.
- Identify the different game engine systems, how they interact with each other, how they enable the design of various genres of computer games, and how they enable game engine reuse across games and/or game genres.
- Implement various engine systems, and combine them into a functional, simple game engine with sufficient capabilities to support the design of a game.
- Welcome, Introduction, Course Overview
- Engine architecture
- Gameplay Foundations, Low-level Engine Systems
- Game Loop Architectures
- Networking, Networked Game Loop Architectures
- Measuring Time; Timelines
- Runtime Object Models
- Object-centric models
- Property-centric models
- Event Management
- Memory Management
- Event Synchronization
- Resource Management
- I/O, Configuration Management
See Course Listings