The game design and development minor is intended for students studying in a technical field who want to combine their knowledge and skill in software development with the media-centric approach to application design that is exemplified in the professional games and simulation industries. The minor defines a series of courses that build upon students’ existing knowledge in computing, physics, and mathematics to explore the design principles of games and interactive worlds through the creation of prototypes and software projects.
Notes about this minor:
This minor is closed to students majoring in game design and development.
Posting of the minor on the student's academic transcript requires a minimum GPA of 2.0 in the minor.
In this course, students will learn to create visually rich interactive experiences. It is a course in programming graphics and media, but it is also a course on the relationship between ideas and code. Students will explore topics in math and physics by building programs that simulate and visualize processes in the natural world. Assignments will include major programming projects, such as building a virtual world inhabited by digital creatures that display observable behaviors.
Data Structures & Algorithms for Games & Simulations I
This course focuses upon the application of data structures, algorithms, and fundamental Newtonian physics to the development of video game applications, entertainment software titles, and simulations. Topics covered include 3D coordinate systems and the implementation of affine transformations, geometric primitives, and efficient data structures and algorithms for real-time collision detection. Furthermore, Newtonian mechanics principles will be examined in the context of developing game and entertainment software where they will be applied to compute the position, velocity and acceleration of a point-mass subject to forces and the conservation of momentum and energy. Programming assignments are a required part of this course.
Game Design & Development I
This course examines the core process of game design, from ideation and structured brainstorming in an entertainment technology context through the examination of industry standard processes and techniques for documenting and managing the design process. This course specifically examines techniques for assessing and quantifying the validity of a given design, for managing innovation and creativity in a game development-specific context, and for world and character design. Specific emphasis is placed on both the examination and deconstruction of historical successes and failures, along with presentation of ethical and cultural issues related to the design and development of interactive software and the role of individuals in a team-oriented design methodology. Students in this class are expected to actively participate and engage in the culture of design and critique as it relates to the field.
Data Structures & Algorithms for Games & Simulations II
This course continues the investigation into the application of data structures, algorithms, and fundamental Newtonian mechanics required for the development of video game applications, simulations, and entertainment software titles. Topics covered include quaternion representation of orientation and displacement, cubic curves and surfaces, classifiers, recursive generation of geometric structures, texture mapping, and the implementation of algorithms within game physics engines for collision detection and collision resolution of rigid bodies, and the numerical integration of the equations of motion. In addition, advanced data structures such as B+ trees and graphs will be investigated from the context of game application and entertainment software development. Programming assignments are a requirement for this course.
Game Design & Development II
This course continues to examine the core theories of game design as they relate to the professional field. Beginning with a formalized pitch process, this course examines the design and development paradigm from story-boarding and pre-visualization through rapid iteration, refinement, and structured prototyping exercises to further examine the validity of a given design. Specific emphasis is placed on iterative prototyping models, and on methodologies for both informal and formal critique. This course also explores production techniques and life-cycle in the professional industry.