Skip to content
Main Menu

Other Sites

The Master of Entertainment Arts and Engineering degree is designed as a cohort model where students from all four tracks remain together throughout the two year program (fall and spring semesters only). Students take a series of courses focused on their specialty, as well as a series of classes with students from other tracks including game design, rapid prototyping, pre-production, and final projects. Each track also has a concentrated set of electives to choose from.

Students typically enroll in three courses each semester for the two years they are in the program (see below for a sample program of study).

Sample Engineering Track Curriculum


Each of the graduate tracks have both shared and unique classes. Scroll to view the specific classes for each track. 

Fall 1

  • GAMES 6300 – C++ for Game Programming (3 credit hours)
  • GAMES 6100 – Rapid Prototyping (4)
  • GAMES 6000 – Theories of Games and Play (3)

Spring 1

  • GAMES 6310 – Game Engineering I (3)
  • GAMES 6110 – Game Studio (4)
  • GAMES 6*** – Directed Elective (3)

Fall 2

  • GAMES 6320 – Game Engineering II (3)
  • GAMES 6120 – Advanced Game Studio I (4)
  • GAMES 6*** – Directed Elective (3)

Spring 2

  • GAMES 6330 – Game Engineering III  (3)
  • GAMES 6130 – Advanced Game Studio II (4)
  • GAMES 6*** – Directed Elective (3)

Course Descriptions:


GAMES 6000 – Theories of Games and Play

In this required course for the MEAE, students will play and analyze games concurrently with studying contemporary research and theories about them. The medium of games will be examined from a variety of perspectives including their aesthetic potential, uses, culture, their industrial production, and more. In this way, this course provides opportunities for richer and more informed views on games as a cultural medium. The course involves significant amounts of reading, writing, and presenting.

GAMES 6100 – Rapid Prototyping

Rapid Prototyping is a project-based course focused on the prototyping phase of game development. Over the course of the semester, students will work in small teams developing prototypes of video games in a short amount of time. Each development cycle presents constraints, and students will put game design theories into practice to overcome emergent problems brought about by working in interdisciplinary teams. This course serves as an introduction to studio simulations and will help students form and test their identities as a game developer. 

GAMES 6110 – Game Studio

This course provides MEAE students with a venue to test and explore the skills they have learned during their first semester of graduate studies and guidance in abstracting their experiences. Working in multidisciplinary groups, students will follow an industrial model while building a video game from the ground up. This model includes the following phases: brainstorming, pitching, prototyping, and development.

Instructors act as coaches/mentors in the studio and as Executive Producers in stakeholder meetings, working with each team throughout the development process (pitching, prototyping, alpha, beta, gold) as they secure investment to build their product. 


Students will work collaboratively on a medium-sized team to design and develop prototypes, meet milestones, and iterate based on playtesting. By completing this course, students will gain practical experience in taking a concept to market, resulting in a feature complete game for public release.

 

GAMES 6120 – Advanced Game Studio I

Students work collaboratively in large teams in the design and development of their master's game project. This course is the first of a two-course sequence that continues in Advanced Game Studio II.

GAMES 6130 – Advanced Game Studio II

Students work collaboratively in large teams in the design and development of their master's game project. This course is the second course of a two-course sequence that began in Advanced Game Studio I. Students are expected to publish their master's game project as part of this course.

GAMES 6300 – C++ for Game Programming

This is the beginning masters level game programming course. We begin with a C++ refresher/review section to discuss the language including: source code management techniques; programming fundamentals; and basic memory management models. The class then delves deeply into how to use C++ to write highly performant game engine code including: efficient memory manipulation; performant tradeoffs of C++ language constructs; when templates and containers can and should be used in game engines; hidden costs of assorted data structures; etc. By the end of the course students will understand how and why C++ is used to write high performance code, specifically targeting video game engines.

GAMES 6310 – Game Engineering I 

Students will learn selected topics as applied to building a game engine. Topics will include: mathematics for games, data structures and algorithms for games, asset database systems, game pipeline processes, design patterns common to industry, and debugging systems used in the industry.

GAMES 6320 – Game Engineering II 

This course is a continuation of Game Engineering I (GAMES 6310) and is project driven. Students will learn selected topics by dissecting given game engines and applying them to the game engine built in Game Engineering I, by extending it from a 2D game engine into a functional 3D game engine. Topics will include: 3D graphics, high performance computing, GPU/parallel programming, low-level algorithm analysis, and cross platform development, and memory management.

GAMES 6330 – Game Engineering III

This advanced course delves into gameplay programming topics that will develop your skills within industry standard game engines. We will discuss theory and topics from gameplay development, while gaining proficiency in the tools and techniques professional game developers use. Through a series of gameplay prototype assignments, we will explore a variety of gameplay systems and the design decisions involved with their implementation.

 

Sample Directed Electives for Game Engineers:
Availability varies by term.

  • GAMES 6610 – Artificial Intelligence for Games
  • GAMES 6900 – C++ in Unreal Engine

GET ADMISSIONS DETAILS