The SCS Computer Graphics Concentration provides an opportunity for SCS undergraduate students at Carnegie Mellon to learn Computer Graphics foundations and specialties from a variety of application and research areas. Students gain a broad view of Computer Graphics in an introductory course and in-depth experience from a choice of topic areas, including the option of independent research.
- Computational photography
- Computer games
- Computer animation
- Computational geometry
- Physics-based rendering
LEARNING OBJECTIVESStudents completing this concentration will be able to demonstrate the following skills and learning:
- Create geometric representations for objects and natural phenomena.
- Develop software systems that work with these representations to capture, manipulate, and create artistic and real-world scenes.
- Discuss the pros and cons of alternative models of light transport.
- Develop software systems that utilize these models to create graphical images.
- State the key principles of animation and computer game development.
- Work with kinematic and physically simulated representations of motion to create animations of characters and natural phenomena.
- List key features of camera design, including for the modern camera.
- Work with images and video to perform common operations or generate new creative content.
- Execute common mathematical operations of computer graphics, including geometric transformations, projections, sampling algorithms, modeling of physical processes, optimization, and behavior-based modeling.
- Produce event-driven programs of moderate to large size with constantly evolving graphical / visual display.
- Sketch the layout of a typical massively parallel graphics processing unit (GPU).
- Write software to program the GPU for real-time graphics tasks.
PREREQUISITES(15-213, 21-259, and 21-240) or (15-213, 21-259, and 21-241) or (18-213 and 18-202).
The Computer Graphics Concentration requires that students complete one core course and their choice of three elective courses for a minimum of 33 units. The electives can be chosen from a specific set of stand-alone courses. Students can opt to do an undergraduate research project as one of their electives.
Required core course (12 units)15-462 — Computer Graphics
Electives (minimum 33 units)Students must complete 3 electives from the following list of courses for a minimum of 33 units. A maximum of 12 units of research may be applied to the elective count and must be approved by the concentration advisor.
- 15-365 — Experimental Animation
- 15-418 — Parallel Computer Architecture and Programming
- 15-456 — Computational Geometry
- 15-458 — Discrete Differential Geometry
- 15-463 — Computational Photography
- 15-464 — Technical Animation
- 15-465 — Animation Art and Technology
- 15-466 — Computer Game Programming
- 15-468 — Physics-Based Rendering
- 15-469 — Algorithmic Textiles Design
- 16-726 — Learning-based Image Synthesis 16-823 Physics-based Vision
RELATION TO OTHER PROGRAMSThe Computer Graphics Concentration overlaps slightly in course offerings of the IDeATE minors in Game Design and Animation and Special Effects, and interested students may also want to investigate these minors.
What distinguishes the Computer Graphics Concentration is its focus on the fundamental theory, algorithms, and systems that are relevant to graphics. As such, this is an ideal choice for students who wish to get more in-depth, e.g., in preparation for graduate study or a career in Computer Graphics research.
Other courses to be aware of include:
- 21-344 — Numerical Linear Algebra
- 10-725 — Convex Optimization