The Computer Science: Computer Game Design curriculum has 24-26 courses (depending on the core programming sequence taken). Thirteen of the courses are upper-division. Several of the required courses and electives are also general education courses. Please consult with the schedule of classes or the General Catalog for more information.
Course requirements are divided into five conceptual areas and may not be credited in more than one area:
Mathematics
Choose one of the following options:
Credit for one or both MATH 19A/MATH 19B may be granted with adequate performance on the CEEB calculus AB or BC Advanced Placement examinations.
Plus one of the following courses:
MATH 21 | Linear Algebra | 5 |
AM 10 | Mathematical Methods for Engineers I | 5 |
Plus the following course:
CSE 16 | Applied Discrete Mathematics | 5 |
Computational Foundations
Choose one of the following options:
Plus all of the following courses:
CSE 20 | Beginning Programming in Python | 5 |
CSE 12 | Computer Systems and Assembly Language | 5 |
CSE 12L | Computer Systems and Assembly Language Laboratory | 2 |
CSE 30 | Programming Abstractions: Python | 7 |
CSE 101 | Introduction to Data Structures and Algorithms | 5 |
CSE 111 | Advanced Programming | 5 |
Games and Playable Media Foundations
Complete all of the following courses:
ARTG 80G | Visual Communication and Interaction Design | 5 |
ARTG 80H | Critical History of Digital Games | 5 |
FILM 80V | Video Games as Visual Culture | 5 |
Game Design and Development
Complete all of the following courses.
Computer Game Engineering
Complete five courses from the following list. The majority of these computer game engineering electives (CGEs) are technical practice electives which focus on the development and analysis of computational systems (the “programming” part of game creation). No more than two of the five can be from CMPM 131, CMPM 132, CMPM 150, CMPM 177, CSE 103, CSE 104 or ECON 166A. (These seven courses focus on other skills useful in computer game development, such as design, production, and mathematical analysis.)
NOTE: Lecture/lab combinations count as one course
CMPM 179 may be repeated for credit, but only the first offering counts toward the computer game engineering requirement.
Disciplinary Communication (DC) Requirement
Students must satisfy the major's upper-division disciplinary communication (DC) requirement by completing the first course in the game design studio sequence:
Comprehensive Requirement
Students satisfy the senior comprehensive requirement by receiving a passing grade in all three courses of the game design studio sequence: CMPM 170, CMPM 171, and CMPM 172.
The following are three sample academic plans that students can use to plan their sequence of courses in the major. The first two plans are suggested guidelines for students who begin their studies in their frosh year. Such students, if they plan carefully, will have several openings free to take other breadth courses they find interesting.
Plan one is for a student entering UCSC in their frosh year who is prepared to go directly into MATH 19A/MATH 20A and CSE 30.
Plan two is for a student entering UCSC their frosh year who needs to take preparatory courses prior to MATH 19A or CSE 30 to ensure a successful outcome in those courses.
Plan three is for a junior transfer student who has completed their mathematics, computational foundations, and general education requirements.
Plan One
Plan Two
In addition to the specific courses shown in the four-year planner, a student must complete courses satisfying the CC, ER, SR, SI, and TA general education requirements.
Plan Three
*This planner assumes that, in addition to the minimum requirements for transfer students to be admitted to UCSC, students should also have completed the equivalents of all but one course from CSE 20, AM 10 or MATH 21, CSE 13E or CSE 13S, and CSE 12 & CSE 12L, as well as all general education requirements if they wish to graduate in two years. This slot in the planner is for any of those courses that the student may not have completed.