Learn More and ApplyGame Programming (MS) Online

Menu

CDM

The MS in Game Programming is designed for those interested in game development programming at the highest level, including computer science and computer graphics professionals retooling for the game industry.

Program Requirements Quarter Hours
Introductory Courses 0-24
Degree Requirements 52
Total hours required 52-76
 

Learning Outcomes

​Students will be able to:

  • Demonstrate mastery of the C++ programming language.
  • Use design patterns to create and design large-scale real-time software systems.
  • Architect and implement real-time Game Engine.
  • Implement and apply advanced rendering techniques for real-time graphics simulation.
  • Create and manage a development schedule of a complex software projects.

Degree Requirements

Course Requirements

No Introductory Course may be substituted for any other course at any level.

Introductory Courses

Course Title Quarter Hours
CSC 400DISCRETE STRUCTURES FOR COMPUTER SCIENCE4
CSC 401INTRODUCTION TO PROGRAMMING4
CSC 402DATA STRUCTURES I4
CSC 403DATA STRUCTURES II4
CSC 406SYSTEMS I4
CSC 407SYSTEMS II4

Introductory courses may be waived for any of the following conditions: 

  • The student has the appropriate course work to satisfy an Introductory Course.
  • The student has appropriate and verified professional experience to satisfy an Introductory Course.
  • If an exam is available, the student passes a Graduate Assessment Examination (GAE) in the Introductory Course area.

Foundation Courses

Course Title Quarter Hours
GAM 425APPLIED 3D GEOMETRY4
CSC 461OPTIMIZED C++4
SE 456ARCHITECTURE OF REAL-TIME SYSTEMS4
GPH 469COMPUTER GRAPHICS DEVELOPMENT4
or GAM 470 RENDERING AND GRAPHICS PROGRAMMING

Advanced Courses

Course Title Quarter Hours
CSC 486REAL-TIME NETWORKING (FORMERLY GAM 490)4
GAM 475GAME ENGINE PROGRAMMING I4
CSC 588REAL-TIME MULTITHREADED ARCHITECTURE4
GAM 575GAME ENGINE PROGRAMMING II4
GAM 476ARTIFICIAL INTELLIGENCE FOR COMPUTER GAMES4
or GAM 450 PHYSICS FOR GAME DEVELOPERS
GAM 576GAME ENGINE PROGRAMMING III4

Major Elective Courses

Students must complete a total of 12 credit hours of graduate level elective courses. Students must choose eight (8) credit hours (typically two courses) from the list below. The remaining four (4) credit hours can be from the list below or any GAM courses in the 421-699 range.

Computer Science Systems Electives

Course Title Quarter Hours
APPLIED ALGORITHMS AND STRUCTURES
INTRODUCTION TO OPERATING SYSTEMS
CONCEPTS OF PROGRAMMING LANGUAGES
COMPILER DESIGN
CSC 562
DATABASE DESIGN FOR INFORMATION SYSTEMS (FORMERLY CSC 451)

Artificial Intelligence Electives

Course Title Quarter Hours
ARTIFICIAL INTELLIGENCE FOR COMPUTER GAMES
ARTIFICIAL INTELLIGENCE I
COGNITIVE SCIENCE
ARTIFICIAL INTELLIGENCE II

Networking Electives

Course Title Quarter Hours
DISTRIBUTED SYSTEMS I
DISTRIBUTED SYSTEMS II

Project Management Electives

Course Title Quarter Hours
SOFTWARE TESTING AND QUALITY ASSURANCE
AGILE SOFTWARE DEVELOPMENT
MANAGING GLOBALLY DISTRIBUTED SOFTWARE DEVELOPMENT
SOFTWARE AND SYSTEMS PROJECT MANAGEMENT

Graphics Electives

Course Title Quarter Hours
COMPUTER ANIMATION SURVEY
COMPUTER GRAPHICS SCRIPTING
ADVANCED RENDERING TECHNIQUES
VISUALIZATION
PRINCIPLES OF COMPUTER ANIMATION
HARDWARE SHADING TECHNIQUES
FUNDAMENTALS OF COMPUTER GRAPHICS
DATA VISUALIZATION (FORMERLY CSC 465)

Object Oriented Design Electives

Course Title Quarter Hours
OBJECT ORIENTED MODELING
SOFTWARE TESTING AND QUALITY ASSURANCE
OBJECT-ORIENTED SOFTWARE DEVELOPMENT
CONCURRENT SOFTWARE DEVELOPMENT

Game Specialties Electives

Course Title Quarter Hours
PHYSICS FOR GAME DEVELOPERS
TOOL PROGRAMMING FOR GAME DEVELOPMENT

Mobile Game Electives

Course Title Quarter Hours
MOBILE APPLICATION DEVELOPMENT FOR IOS
MOBILE APPLICATION DEVELOPMENT FOR ANDROID
MOBILE APPLICATION DEVELOPMENT FOR IOS II
MOBILE APPLICATION DEVELOPMENT FOR ANDROID II
GAME PROGRAMMING FOR MOBILE DEVICES

Project Electives

Course Title Quarter Hours
GAME DEVELOPMENT STUDIO I 1
GAME DEVELOPMENT STUDIO II
MASTER'S GAME RESEARCH STUDY