Courses tagged with graphics
COSC-225: Algorithms and Visualization (1) graphics
In this course, we will explore how algorithmic and aesthetic principles can be employed in concert to create interactive graphical content on the web. Topics will include design layout and combinatorial optimization, the geometry of color spaces, graph drawing, computational geometry, generative design, and visualization of data and algorithms. In addition, we will consider issues of algorithmic efficiency in performing computationally intensive tasks. We will investigate topics from both theoretical and applied perspectives. Students will code projects using standard web development tools: HTML, CSS, and JavaScript. (Amherst)
COSC-321: Computer Graphics (1) graphics
This course will explore the algorithms used to create 'realistic' three-dimensional computer images. (Amherst)
CPI 111: Game Development I (3) graphics
Introduces video game design, art theory, and concepts as they apply to video game development. Basic art principles used in game development. Covers the fundamental video game art principles of 2-D and 3-D composition, color theory, modeling, and lighting techniques. Demonstrates practical application of these art fundamentals in establishing style guides, concept art, storyboards, and in-game assets. Also includes game design, game production, asset production, and game programming. Hands-on experience by creating 2-D game prototypes belonging to different video game genres and evaluating the techniques. (ASU)
CPI 211: Game Development II (3) graphics
Introduces the basics of 3D game development by using a game engine. Focuses on the pipeline of 3D game development including environment and contents creation, scripting to control components, and graphics user interfaces development. Develops several 3D games for multi platforms. (ASU)
CPI 311: Game Engine Development (3) graphics
State-of-the-art techniques for computer game design and programming with an emphasis on 3-D graphics and interaction. Focuses on a practical, example-driven approach to learning the unique art of 3-D game development. Topics include graphics game engines, textures, shader programming, artificial intelligence, physics, modeling, sound effects, and techniques for user interfaces. (ASU)
CPI 321: Fundamentals of Game Art (3) graphics
Introduces art theory and concepts as they apply to video game development. Covers 2-D and 3-D composition, color theory, modeling, and lighting techniques. Demonstrates practical application of these art fundamentals in establishing style guides, concept art, storyboards, and in-game assets. (ASU)
CSE 470: Computer Graphics (3) graphics
Introduces basic concepts of interactive computer graphics, realistic rendering, and 3-D viewing. (ASU)
CSE 477: Introduction to Computer-Aided Geometric Design (3) graphics
Introduces basic concepts of 3-D computer geometry, including curves, surfaces, meshes. (ASU)
CSE 478: Foundations of Data Visualization (3) graphics
Techniques and algorithms for creating effective visualizations based on principles from graphic design, visual art, perceptual psychology and cognitive science to enhance the understanding of complex data. (ASU)
CSCI 4820: Computer Graphics (3) graphics
An examination of the hardware and software components of graphics systems and their applications. Programming assignments to illustrate the creation and manipulation of graphic displays using a simple graphics package. (Augusta)
CSI 4341: Computer Graphics (3) graphics
Introduction to graphic representation and display of information and objects by computer. Topics include hardware display technology and algorithms for two-dimensional and three-dimensional graphics. A current graphic system model will be used for programming assignments. (Baylor)
CS 460: Computer Graphics (4) graphics
Concepts, structure, techniques and algorithms for use of modern interactive computer graphics systems. Graphics hardware, software system structure. Techniques and algorithms for basic graphics input/output functions. Matrix techniques for transformations and projections. Techniques for two- and three-dimensional modeling, rendering, animation and visualization. (Binghamton)
CS 480: Introduction to Computer Graphics (4) graphics
Introduction to computer graphics algorithms, programming methods, and applications. Focus on fundamentals of two- and three-dimensional raster graphics: scan-conversion, clipping, geometric transformations, and camera modeling. Introduces concepts in computational geometry, computer-human interfaces, animation, and visual realism. (BU)
CS 581: Computational Fabrication (4) graphics
Introduces 3D printing technology and computational methods for creating physical prototypes from geometric models. Student-led paper presentations cover research from prominent Computer Graphics and Human Computer Interaction conferences. Culminates in a design project involving a computational component and physical prototyping. (BU)
COSI 116a: Information Visualization (4) graphics
Introduces foundational principles, methods, and techniques of visualization to enable creation of effective visual representations of information. Covers the design and evaluation of novel visual encodings for diverse and heterogeneous data, including numerical, ordinal, nominal, and temporal data, network data, and multimedia data. Provides an overview of relevant principles of human vision, perception, and psychology related to the derivation of insights from visual analysis. Create visualizations in Tableau, Python, and JavaScript. Requires programming in Python, JavaScript, HTML, and CSS. Requires extensive writing including documentation, explanations, and discussions of findings from data analyses. Students will choose from datasets across diverse topics such as climate science, sustainability, urban planning, and healthcare data to develop their own visual analyses. Students will analyze data in groups and present their findings both in slide-form and in a writeup that will be publishable in an online setting. Usually offered every year. (Brandeis)
COSI 164a: Introduction to 3-D Animation (4) graphics
Covers the fundamental concepts of 3-D animation and teaches both the theory underlying 3-D animation as well as the skills needed to create 3-D movies. (Brandeis)
CSCI 1230: Computer Graphics (1) graphics
Fundamental concepts in 2D and 3D computer graphics, e.g., 2D raster graphics techniques and simple image processing. Focuses on geometric transformations, and 3D modeling, viewing and rendering. A sequence of assignments in C++ culminates in a simple geometric modeler and ray tracer. (Brown)
CSCI 1250: Introduction to Computer Animation (1) graphics
Introduction to 3D computer animation production including story writing, production planning, modeling, shading, animation, lighting, and compositing. The first part of the course leads students through progressive exercises that build on each other to learn basic skills in 2D and 3D animation. At each step, student work is evaluated for expressiveness, technical correctness and aesthetic qualities. Students then work in groups creating a polished short animation. Emphasis on in-class critique of ongoing work which is essential to the cycle of visually evaluating work in progress, determining improvements, and implementing them for further evaluation. (Brown)
CSCI 1290: Computational Photography (1) graphics
Computational Photography describes the convergence of computer graphics and computer vision with photography. Its goal is to overcome the limitations of traditional photography using computational techniques to enhance the way we capture, manipulate, and interact with visual media. We will cover topics such as cameras, human visual perception, image processing and manipulation, image based lighting and rendering, high dynamic range, single view reconstruction, photo quality assessment, non photorealistic rendering, the use of Internet-scale data, and many more topics. The course will consist of several programming assignments and a final project. (Brown)
CSCI 1950-N: 2D Game Engines (1) graphics
2D Game Engines covers core techniques used in the development 2D game engines. Projects involve building different varieties of 2D game engines as well as games that require use of the features implemented in the engines. Topics include high-level engine design, vector and raster graphics, animation, collision detection, physics, content management, and game AI. (Brown)
CSCI 1950-U: Topics in 3D Game Engine Development (1) graphics
Covers core techniques in 3D game development with an emphasis on engine architecture. Students independently develop their own engines using C++, OpenGL, and the Qt framework, then work in groups to create a polished game. Topics include: spatial subdivision, player representation, collision detection and response, game networking, GPUs, and OpenGL. (Brown)
CS 166: Computational Cameras (12) graphics
Computational cameras overcome the limitations of traditional cameras, by moving part of the image formation process from hardware to software. In this course, we will study this emerging multi-disciplinary field at the intersection of signal processing, applied optics, computer graphics, and vision. At the start of the course, we will study modern image processing and image editing pipelines, including those encountered on DSLR cameras and mobile phones. Then we will study the physical and computational aspects of tasks such as coded photography, light-field imaging, astronomical imaging, medical imaging, and time-of-flight cameras. The course has a strong hands-on component, in the form of homework assignments and a final project. In the homework assignments, students will have the opportunity to implement many of the techniques covered in the class. Example homework assignments include building an end-to-end HDR (High Dynamic Range) imaging pipeline, implementing Poisson image editing, refocusing a light-field image, and making your own lensless 'scotch-tape' camera. (Caltech)
CS 171: Computer Graphics Laboratory (12) graphics
This is a challenging course that introduces the basic ideas behind computer graphics and some of its fundamental algorithms. Topics include graphics input and output, the graphics pipeline, sampling and image manipulation, three-dimensional transformations and interactive modeling, basics of physically based modeling and animation, simple shading models and their hardware implementation, and some of the fundamental algorithms of scientific visualization. Students will be required to perform significant implementations. (Caltech)
CS 174: Computer Graphics Projects (12) graphics
This laboratory class offers students an opportunity for independent work including recent computer graphics research. In coordination with the instructor, students select a computer graphics modeling, rendering, interaction, or related algorithm and implement it. Students are required to present their work in class and discuss the results of their implementation and possible improvements to the basic methods. May be repeated for credit with instructor's permission. Not offered 2023-24. (Caltech)
CS 176: Computer Graphics Research (9) graphics
The course will go over recent research results in computer graphics, covering subjects from mesh processing (acquisition, compression, smoothing, parameterization, adaptive meshing), simulation for purposes of animation, rendering (both photo- and nonphotorealistic), geometric modeling primitives (image based, point based), and motion capture and editing. Other subjects may be treated as they appear in the recent literature. The goal of the course is to bring students up to the frontiers of computer graphics research and prepare them for their own research. Not offered 2023-24. (Caltech)
CS 179: GPU Programming (9) graphics
Some experience with computer graphics algorithms preferred. The use of Graphics Processing Units for computer graphics rendering is well known, but their power for general parallel computation is only recently being explored. Parallel algorithms running on GPUs can often achieve up to 100x speedup over similar CPU algorithms. This course covers programming techniques for the Graphics processing unit, focusing on visualization and simulation of various systems. Labs will cover specific applications in graphics, mechanics, and signal processing. The course will use nVidia's parallel computing architecture, CUDA. Labwork requires extensive programming. (Caltech)
CS 311: Computer Graphics (6) graphics
Scientific simulations, movies, and video games often incorporate computer-generated images of fictitious worlds. How are these worlds represented inside a computer? How are they “photographed” to produce the images that we see? What performance constraints and design trade-offs come into play? In this course we learn the basic theory and methodology of three-dimensional computer graphics, including both triangle rasterization and ray tracing. Familiarity with vectors and matrices is recommended but not required. (Carleton)
CS 312: Audio Programming (6) graphics
Students will learn the basics of MIDI and Digital Audio programming using C++. In the MIDI portion of the course, you’ll learn to record, play, and transform MIDI data. During the Digital Audio portion of the course, you’ll learn the basics of audio synthesis: oscillators, envelopes, filters, amplifiers, and FFT analysis. Weekly homework assignments, two quizzes, and two independent projects. (Carleton)
CS 314: Data Visualization (6) graphics
Understanding the wealth of data that surrounds us can be challenging. Luckily, we have evolved incredible tools for finding patterns in large amounts of information: our eyes! Data visualization is concerned with taking information and turning it into pictures to better communicate patterns or discover new insights. It combines aspects of computer graphics, human-computer interaction, design, and perceptual psychology. In this course, we will learn the different ways in which data can be expressed visually and which methods work best for which tasks. Using this knowledge, we will critique existing visualizations as well as design and build new ones. (Carleton)
05-319: Data Visualization (12) graphics
This course is an introduction to key design principles and techniques for interactively visualizing data. The major goals of this course are to understand how visual representations can help in the analysis and understanding of complex data, how to design effective visualizations, and how to create your own interactive visualizations using modern web-based frameworks. (CMU)
15-365: Experimental Animation (12) graphics
This class will explore animation from the student's perspective with a sense of investigation toward both form and content. Topics in the class will include non-linear narrative, visual music, puppet and non-traditional materials, manipulation of motion and performance capture data, immersive environments. (CMU)
15-462: Computer Graphics (12) graphics
This course provides a comprehensive introduction to computer graphics modeling, animation, and rendering. Topics covered include basic image processing, geometric transformations, geometric modeling of curves and surfaces, animation, 3-D viewing, visibility algorithms, shading, and ray tracing. (CMU)
15-463: Computational Photography (12) graphics
Computational photography is the convergence of computer graphics, computer vision and imaging. Its role is to overcome the limitations of the traditional camera, by combining imaging and computation to enable new and enhanced ways of capturing, representing, and interacting with the physical world. This advanced undergraduate course provides a comprehensive overview of the state of the art in computational photography. At the start of the course, we will study modern image processing pipelines, including those encountered on mobile phone and DSLR cameras, and advanced image and video editing algorithms. Then we will proceed to learn about the physical and computational aspects of tasks such as 3D scanning, coded photography, lightfield imaging, time-of-flight imaging, VR/AR displays, and computational light transport. Near the end of the course, we will discuss active research topics, such as creating cameras that capture video at the speed of light, cameras that look around walls, or cameras that can see through tissue. The course has a strong hands-on component, in the form of seven homework assignments and a final project. In the homework assignments, students will have the opportunity to implement many of the techniques covered in the class, by both acquiring their own images of indoor and outdoor scenes and developing the computational tools needed to extract information from them. For their final projects, students will have the choice to use modern sensors provided by the instructors (lightfield cameras, time-of-flight cameras, depth sensors, structured light systems, etc.). This course requires familarity with linear algebra, calculus, programming, and doing computations with images. The course does not require prior experience with photography or imaging. (CMU)
15-464: Technical Animation (12) graphics
This course introduces techniques for computer animation such as keyframing, procedural methods, motion capture, and simulation. The course also includes a brief overview of story-boarding, scene composition, lighting and sound track generation. The second half of the course will explore current research topics in computer animation such as dynamic simulation of flexible and rigid objects,automatically generated control systems, and evolution of behaviors. The course should be appropriate for graduate students in all areas and for advanced undergraduates. (CMU)
15-465: Animation Art and Technology (12) graphics
Animation, Art, and Technology is an interdisciplinary, Art and Computer Science, cross-listed course. Faculty and teaching assistants from computer science and art teach the class as a team. It is a project-based course in which interdisciplinary teams of students can produce animations across platforms from single channel to augmented reality. Most of the animations have a substantive technical component and the students are challenged to consider innovation with content to be equal with the technical. The class includes basic tutorials for work in Maya and Unity leading toward more advanced applications and extensions of the software such as motion capture and algorithms for animating cloth, hair, particles, and immersive technologies. (CMU)
15-466: Computer Game Programming (12) graphics
The goal of this course is to acquaint students with the code required to turn ideas into games. This includes both runtime systems and #8212; e.g., AI, sound, physics, rendering, and networking and #8212; and the asset pipelines and creative tools that make it possible to author content that uses these systems. In the first part of the course, students will implement small games that focus on specific runtime systems, along with appropriate asset editors or exporters. In the second part, students will work in groups to build a larger, polished, open-ended game project. Students who have completed the course will have the skills required to extend and #8212; or build from scratch and #8212; a modern computer game. Students wishing to take this class should be familiar with the C++ language and have a basic understanding of the OpenGL API. If you meet these requirements but have not taken 15-462 (the formal prerequisite), please contact the instructor. (CMU)
15-468: Physics-Based Rendering (12) graphics
This course is an introduction to physics-based rendering at the advanced undergraduate and introductory graduate level. During the course, we will cover fundamentals of light transport, including topics such as the rendering and radiative transfer equation, light transport operators, path integral formulations, and approximations such as diffusion and single scattering. Additionally, we will discuss state-of-the-art models for illumination, surface and volumetric scattering, and sensors. Finally, we will use these theoretical foundations to develop Monte Carlo algorithms and sampling techniques for efficiently simulating physically-accurate images. Towards the end of the course, we will look at advanced topics such as rendering wave optics, neural rendering, and differentiable rendering. The course has a strong programming component, during which students will develop their own working implementation of a physics-based renderer, including support for a variety of rendering algorithms, materials, illumination sources, and sensors. The project also includes a final project, during which students will select and implement some advanced rendering technique, and use their implementation to produce an image that is both technically and artistically compelling. The course will conclude with a rendering competition, where students submit their rendered images to win prizes. Cross-listing: This is both an advanced undergraduate and introductory graduate course, and it is cross-listed as 15-468 (for undergraduate students), 15-668 (for Master's students), and 15-868 (for PhD students). Please make sure to register for the section of the class that matches your current enrollment status. (CMU)
15-469: Special Topic: Visual Computing Systems (12) graphics
Visual computing tasks such as computational imaging, image/video understanding, and real-time graphics are key responsibilities of modern computer systems ranging from sensor-rich smart phones to large datacenters. These workloads demand exceptional system efficiency and this course examines the key ideas, techniques, and challenges associated with the design of parallel, heterogeneous systems that accelerate visual computing applications. This course is intended for graduate and advanced undergraduate-level students interested in architecting efficient graphics, image processing, and computer vision platforms. (CMU)
CSDS 366: Computer Graphics (3) graphics
Theory and practice of computer graphics: object and environment representation including coordinate transformations image extraction including perspective, hidden surface, and shading algorithms; and interaction. Covers a wide range of graphic display devices and systems with emphasis in interactive shaded graphics. (Case)
CSDS 466: Computer Graphics (3) graphics
Theory and practice of computer graphics: object and environment representation including coordinate transformations image extraction including perspective, hidden surface, and shading algorithms; and interaction. Covers a wide range of graphic display devices and systems with emphasis in interactive shaded graphics. (Case)
CP360: Computer Graphics (1) graphics
Introduction to the algorithms and theory necessary for producing graphic images with the computer. Topics include perspective, projection, hidden line removal, curve design, fractal images, shading, and some animation. (Not offered 2024-25). (Colorado)
COMS W4160: Computer Graphics (3) graphics
Introduction to computer graphics. Topics include 3D viewing and projections, geometric modeling using spline curves, graphics systems such as OpenGL, lighting and shading, and global illumination. Significant implementation is required: the final project involves writing an interactive 3D video game in OpenGL (Columbia)
COMS W4162: Advanced Computer Graphics (3) graphics
A second course in computer graphics covering more advanced topics including image and signal processing, geometric modeling with meshes, advanced image synthesis including ray tracing and global illumination, and other topics as time permits. Emphasis will be placed both on implementation of systems and important mathematical and geometric concepts such as Fourier analysis, mesh algorithms and subdivision, and Monte Carlo sampling for rendering. Note: Course will be taught every two years. (Columbia)
COMS W4165: Comput Techniques-Pixel Procss (3) graphics
An intensive introduction to image processing - digital filtering theory, image enhancement, image reconstruction, antialiasing, warping, and the state of the art in special effects. Topics from the basis of high-quality rendering in computer graphics and of low-level processing for computer vision, remote sensing, and medical imaging. Emphasizes computational techniques for implementing useful image-processing functions (Columbia)
COMS W4167: Computer Animation (3) graphics
Theory and practice of physics-based animation algorithms, including animated clothing, hair, smoke, water, collisions, impact, and kitchen sinks. Topics covered: Integration of ordinary differential equations, formulation of physical models, treatment of discontinuities including collisions/contact, animation control, constrained Lagrangian Mechanics, friction/dissipation, continuum mechanics, finite elements, rigid bodies, thin shells, discretization of Navier-Stokes equations. General education requirement: quantitative and deductive reasoning (QUA). (Columbia)
CS 3152: Introduction to Computer Game Architecture (4) graphics
A project-based course in which programmers and designers collaborate to make a computer game. (Cornell)
CS 4152: Advanced Topics in Computer Game Architecture (3) graphics
Project-based follow-up course to CS 3152. Students work in a multidisciplinary team to develop a game that incorporates innovative game technology. (Cornell)
CS 4620: Introduction to Computer Graphics (3) graphics
Introduction to the principles of computer graphics in two and three dimensions. (Cornell)
CS 4621: Computer Graphics Practicum (2) graphics
Provides CS 4620 students with hands-on experience in computer graphics programming on modern graphics hardware. This course emphasizes effective use of graphics APIs and the architecture of graphics applications. A final project involves building a substantial interactive graphics system. The course uses Javascript and WebGL for code development. (Cornell)
CS 5152: Advanced Topics in Computer Game Architecture (3) graphics
Students work in a multidisciplinary team to develop a game that incorporates innovative game technology. Advanced topics include 3D game development, mobile platforms, multiplayer gaming, and nontraditional input devices. There is a special emphasis on developing games that can be submitted to festivals and competitions. (Cornell)
CS 5625: Interactive Computer Graphics (4) graphics
Methods for interactive computer graphics, targeting applications including games, visualization, design, and immersive environments. Introduces students to state-of-the-art interactive techniques and programmable shading. Programming assignments use C++ and OpenGL, and students also propose and implement an open-ended final project. (Cornell)
CS 5643: Physically Based Animation for Computer Graphics (4) graphics
This course introduces students to fundamental physically based modeling techniques used in computer graphics for animation of rigid and deformable solids, virtual characters, fluids and gases, and other systems. Students learn the techniques by implementing a series of interactive computer programs that apply a range of representative simulation methods to simple, primarily 2D systems, and by proposing and implementing a final project. (Cornell)
COSC 22: 3D Digital Modeling (1) graphics
This lab course teaches principles and practices of 3D modeling. Topics include modeling, shading, textures, lighting, rendering, dynamics, special effects, and animation. No prior experience, coding, or drawing skills needed. (Dartmouth)
COSC 24: Computer Animation: The State of the Art (1) graphics
This hands-on course focuses on state-of-the-art computer animation techniques. Topics include traditional animation principles applied to 3D computer animation, motion capture, and dynamic simulations. (Dartmouth)
COSC 27: Projects in Digital Arts (1) graphics
This is the culminating course for the Digital Arts Minor. Students complete projects in digital arts, including: computer animations; games, VR/AR applications, interactive digital installations and media. Students work in small teams to complete work of a high production quality or work that incorporates innovations in technology. Grades are based on aesthetic and technical criteria along with teamwork and adherence to weekly milestones. (Dartmouth)
COSC 66: Game Development Principles Applied In Educational/Serious Games (1) graphics
Digital games are a growing platform for education, entertainment, and visualization with a myriad of technological and theoretical challenges. This course explores the concepts and techniques involved in developing real-time 2D and 3D games, as well as the opportunities and constraints when applied to the field of serious games in areas such as education, healthcare, scientific visualization, emergency planning and response, government, and engineering. Topics include: 2d and 3d game engines, game ai, procedural generation, real-time rendering pipelines, game physics, shaders, game programming patterns, networked games, state synchronization, and game mechanics. Projects include building games from scratch such as an online multiplayer game with a server-side component. (Dartmouth)
COSC 77: Computer Graphics (1) graphics
This course provides a broad introduction to the mathematical and programmatic foundations of computer graphics, including modeling, rendering (drawing), and animating three-dimensional scenes. Topics include digital image representation, two- and three-dimensional shape representations (e.g. parametric curves and surfaces, meshes, subdivision surfaces), geometrical transformations (e.g. rotations, scales, translations, and perspective projection), rigging and skinning, the rasterization pipeline, ray tracing, illumination and shading models, texturing, and light & visual perception. Coursework typically includes a mix of programming assignments, quizzes/hand-written work, assigned readings, and a final project. Knowledge of basic linear algebra and programming skills are assumed. (Dartmouth)
COSC 87: Rendering Algorithms (1) graphics
This class is intended for students interested in obtaining a deep technical understanding of the physically based rendering techniques used to produce photorealistic images in animated films, visual effects, or architectural and product visualizations. Students will learn how light behaves and interacts with objects in the real world and how to translate the underlying math and physics into practical algorithms for creating photorealistic images. The course will provide a detailed treatment of the industry-standard Monte Carlo methods for light transport simulation, such as path tracing, bidirectional path tracing, and photon mapping. Each major topic will also be accompanied by a programming assignment where students implement these algorithms within their own software framework to obtain practical experience. Additional coursework includes quizzes/handwritten exercises and assigned readings. At the end of the term, each student will work on a self-directed final project that extends their rendering software with additional features of their own choosing with the goal of creating a photorealistic image. (Dartmouth)
COSC 23.01: Augmented and Virtual Reality Design (1) graphics
This hands-on course exposes students to the aesthetic, technical, and societal issues of augmented and virtual reality design. Students learn interactive development for VR/AR and work on teams to create assets and design UI/UX. (Dartmouth)
COSC 63.01: Augmented and Virtual Reality Development (1) graphics
This hands-on projects-based course is for developers who have completed COSC 10. It covers the technical, aesthetic, and societal issues surrounding the emerging frontiers of digitally mediated realities. Students learn the fundamentals of augmented and virtual reality development, while working in small interdisciplinary teams with digital arts students who are concurrently enrolled in COSC 23.01. COSC 63.01 and COSC 23.01 have class together and work together on teams. Developers in this course build interactive digital tools, games, and visualizations, while designers create assets and the interface. This course will also address the sociological implications of the technology. This course is not open to students who have received credit for COSC 29.22 or COSC 89.22. (Dartmouth)
CS 3451: Computer Graphics (3) graphics
Geometric constuctions; transformations; perception; reflection models; photorealistic; non-photorealistic, and image-based rendering; rendering software and API's; triangle-mesh processing; graphic acceleration; user-interaction, design and animation. (Georgia Tech)
CS 4455: Video Game Design and Programming (3) graphics
Techniques for electronic game design and programming, including graphics game engines, motion generation, behavioral control for autonomous characters, interaction structure, social and interface issues of multi-user play, and the business aspects of game development. (Georgia Tech)
CS 4460: Introduction to Information Visualization (3) graphics
Introduction to principles and techniques of information visualization, the presentation of primarily abstract data to help people understand, analyze and make sense of data. Students cannot receive credit for both CS 4460 and CS 6730. (Georgia Tech)
CS 4475: Computational Photography (3) graphics
An introductory course on the scientific, technical, perceptual, and aesthetic principles of pictures. (Georgia Tech)
CS 4480: Digital Video Special Effects (3) graphics
A study of digital multimedia and the analysis and synthesis of digital video. Special attention paid to techniques for generating video special effects. (Georgia Tech)
CS 4488: Procedural Content Generation (3) graphics
Students will learn algorithmic techniques for creating geometric models and images that can be used for games, feature films or virtual reality. (Georgia Tech)
CS 4496: Computer Animation (3) graphics
Motion techniques for computer animation and interactive games (keyframing, procedural methods, motion capture, and simulation) and principles for storytelling, composition, lighting, and interactivity. (Georgia Tech)
CS 4497: Computational Aesthetics (3) graphics
Aesthetics plays a key role in society and economy. Students will invent and test beautification algorithms for colors, music, and animations and more. (Georgia Tech)
CS 4550: Scientific Data Processing and Visualization (3) graphics
Foundations and algorithms underlying the development and application of tools for the efficient transmission, analysis, filtering, and visualization of large scientific data sets. (Georgia Tech)
COMPSCI 1710: Visualization (4) graphics
An introduction to key design principles and techniques for visualizing data. Covers design practices, data and image models, visual perception, interaction principles, visualization tools, and applications. Introduces programming of web-based interactive visualizations. (Harvard)
COMPSCI 1750: Computer Graphics (4) graphics
This course covers the fundamentals of 3D computer graphics using a modern shader-based version of OpenGL. Main topics include: geometric coordinate systems and transformations, keyframe animation and interpolation, camera simulation, triangle rasterization, material simulation, texture mapping, image sampling and color theory. The course also touches on ray tracing, geometric modeling and simulation-based animation. (Harvard)
6.4400: Computer Graphics (12) graphics
Introduction to computer graphics algorithms, software and hardware. Topics include ray tracing, the graphics pipeline, transformations, texture mapping, shadows, sampling, global illumination, splines, animation and color. (MIT)
CS 3540: Game Programming (4) graphics
Introduces the different subsystems used to create a 3D game, including rendering, animation, collision, physics, audio, trigger systems, game logic, behavior trees, and simple artificial intelligence. Offers students an opportunity to learn the inner workings of game engines and how to use multiple libraries such as physics and graphics libraries to develop a game. Discusses graphics pipeline, scene graph, level design, behavior scripting, object-oriented game design, world editors, and game scripting languages. (Northeastern)
CS 4097: Mixed Reality (4) graphics
Seeks to provide a strong foundation in the fundamentals of virtual and augmented reality, broadly defined as mixed reality (XR). These technologies have recently witnessed a resurgence of interest. Offers students an opportunity to obtain hands-on experience developing XR applications by diving into this burgeoning area of research and practice in computer science. Synthesizes theoretical and practice knowledge from various disciplines, including computer graphics, 3D interfaces, human-computer interaction, tracking systems, and perceptual psychology. (Northeastern)
CS 4300: Computer Graphics (4) graphics
Charts a path through every major aspect of computer graphics with varying degrees of emphasis. Discusses hardware issues: size and speed; lines, polygons, and regions; modeling, or objects and their relations; viewing, or what can be seen (visibility and perspective); rendering, or how it looks (properties of surfaces, light, and color); transformations, or moving, placing, distorting, and animating and interaction, or drawing, selecting, and transforming. (Northeastern)
CS 4360: Non-Interactive Computer Graphics (4) graphics
Introduces computer graphics algorithms and concepts primarily focusing on offline rendering techniques. Consists of a lecture component and in-class laboratory to study common image synthesis algorithms and techniques to generate images used in games and 3D animated movies. Culminates with a final project in which students complete in groups or individually a renderer for generating high quality images. Students with an interest in a career as a graphics, rendering, or high performance computer engineer may consider taking this course. (Northeastern)
CS 4850: Building Game Engines (4) graphics
Discusses the components of game engines and strategies for their software implementation. Includes graphics management algorithms (animation, scene graph, level of detail); basic artificial intelligence algorithms (search, decision making, sensing); and related algorithmic issues (networking, threading, input processing). Explores the use of data-driven software design. Offers students an opportunity to use a rendering engine and to build and integrate several software components to create a complete game engine. Requires students to work on several individual assignments to apply the algorithms and then develop a project in a team. Offers students an opportunity to learn team/project management; work division; team communication; and the software development cycle of implementation, testing, critique, and further iteration. Students who do not meet course prerequisites may seek permission of instructor. (Northeastern)
COMP_SCI 331-0: Introduction to Computational Photography (1) graphics
Fundamentals of digital imaging and modern camera architectures. Hands-on experience acquiring, characterizing, and manipulating data captured using a modern camera platform. (Northwestern)
COMP_SCI 333-0: Interactive Information Visualization (1) graphics
This course covers theory and techniques for information visualization using interactive interfaces to visualize abstract data. (Northwestern)
COMP_SCI 351-1: Introduction to Computer Graphics (1) graphics
Mathematical software and hardware requirements for computer graphics systems. Data structures and programming languages. Random displays. Graphic applications. (Northwestern)
COMP_SCI 351-2: Intermediate Computer Graphics (1) graphics
Methods and theory of computer graphics. Project-oriented approach. Describing shapes, movement, and lighting effects; interactive elements. (Northwestern)
COMP_SCI 370-0: Computer Game Design (1) graphics
Plot, narrative, and character simulation for creating game worlds; artificial intelligence for synthetic characters; tuning gameplay. Substantial programming and project work. (Northwestern)
COMP_SCI 376-0: Computer Game Design and Development (1) graphics
Introduction to design of simulation-based media, with an emphasis on 2D game design. Mathematical preliminaries: linear, affine, and projective spaces, linear transforms, inner and exterior products, unit quaternions; Architecture: update/render loop, component systems, serialization and deserialization, event handling and asynchronous processing, multitasking; Rendering: scene graphs, meshes, shaders, sprites; Networking; Audio; Physics: particles, rigid bodies, collision detection; Gameplay design. (Northwestern)
CSCI 181G: Real-Time Graphics and Game Engine Programming (1) graphics
Digital games and other real-time interactive graphical systems synthesize computer graphics, physical simulation, and artificial intelligence into a cohesive whole. In this course students will learn the fundamental techniques of 2D and 3D graphics, collision detection and physics simulation, and agent AI, as well as the software architecture principles to combine these into reusable game “engines.” (Pomona)
COS 426: Computer Graphics (1) graphics
The principles underlying the generation and display of graphical pictures by computer. Hardware and software systems for graphics. Topics include: hidden surface and hidden line elimination, line drawing, shading, half-toning, user interfaces for graphical input, and graphic system organization. (Princeton)
CS 33400: Fundamentals Of Computer Graphics (3) graphics
Fundamental principles and techniques of computer graphics. The course covers the basics of going from a scene representation to a raster image using OpenGL. Specific topics include coordinate manipulations, perspective, basics of illumination and shading, color models, texture maps, clipping and basic raster algorithms, fundamentals of scene constructions. CS 31400 is recommended. (Purdue)
CS 43400: Advanced Computer Graphics (3) graphics
Advanced concepts and techniques of computer graphics. The course covers, in complete detail, going from a scene representation to a raster image without using OpenGL or other graphics packages. The course develops a complete graphics implementation in which the students implement every aspect of the graphics pipeline. This involves a substantial software project in C/C++. (Purdue)
CS 53000: Introduction To Scientific Visualization (3) graphics
Teaches the fundamentals of scientific visualization and prepares students to apply these techniques in fields such as astronomy, biology, chemistry, engineering, and physics. Emphasis is on the representation of scalar, vector, and tensor fields; data sampling and resampling; and reconstruction using multivariate finite elements (surfaces, volumes, and surfaces on surfaces). Typically offered Fall. (Purdue)
COMP 162: Introduction to Game Content Creation (3) graphics
Explore how modern game content is created, and how it interacts with the underlying technology. Beginning with an explanation of how games are developed and what role content plays in the process, the class will learn to use 3D Studio Max, Photoshop, and game-native scripting as they create working content for an established game project. (Rice)
COMP 360: Computer Graphics (4) graphics
2D graphics techniques including fast line and curve drawing and polygon filling. 3D graphics problems including representation of solids, shading, and hidden surface elimination. Fractals, graphics standards. (Rice)
COMP 361: Geometric Modeling (4) graphics
Exploration of curves and surfaces (e.g. parametric form, implicit form, and conversion between forms), the representation of solid (e.g., wireframes, octrees, boundary representations, and constructive solid geometry), and applications (e.g., graphics, motion planning, simulation, and finite element mesh generation. (Rice)
COMP 463: Computer Graphics (4) graphics
2D graphics techniques including fast line and curve drawing and polygon filling. 3D graphics problems including representation of solids, shading, and hidden surface elimination. Fractals, graphics standards. (Rice)
CSSE 252: Computer Game Design (4) graphics
An introduction to computer game design. Topics include game concepts, game settings and worlds, storytelling and narrative, character development, creating the user experience, gameplay, game balancing, and game genres. Working in teams, students will design their own game and produce several design documents for that game. (Rose-Hulman)
CSSE 351: Computer Graphics (4) graphics
Computer graphics algorithms, hardware and software. Line generators, affine transformations, line and polygon clipping, interactive techniques, perspective projection, solid modeling, hidden surface algorithms, lighting models, shading, and graphics standards. Programming assignments and a final project are required. (Rose-Hulman)
CSSE 352: Computer Game Development (4) graphics
An introduction to designing and developing computer games. Topics include game genres, game design, sprites, game physics, collisions, characters, scripting, graphics, and sound. Students will design and implement their own game using an available game engine. (Rose-Hulman)
CSSE 451: Advanced Computer Graphics (4) graphics
Advanced topics in computer graphics. Topics will be drawn from current graphics research and will vary, but generally will include ray tracing, radiosity, physically-based modeling, animation, and stereoscopic viewing. Programming assignments and a research project are required. (Rose-Hulman)
CS 44N: Great Ideas in Graphics (3) graphics
A hands-on interactive and fun exploration of great ideas from computer graphics. Motivated by graphics concepts, mathematical foundations and computer algorithms, students will explore an eccentric selection of 'great ideas' through short weekly programming projects. Project topics will be selected from a diverse array of computer graphics concepts and historical elements. (Stanford)
CS 148: Introduction to Computer Graphics and Imaging (34) graphics
This is the introductory prerequisite course in the computer graphics sequence which introduces students to the technical concepts behind creating synthetic computer generated images. The beginning of the course focuses on using Blender to create visual imagery, as well as an understanding of the underlying mathematical concepts including triangles, normals, interpolation, texture mapping, bump mapping, etc. Then we move on to a more fundamental understanding of light and color, as well as how it impacts computer displays and printers. From this we discuss more thoroughly how light interacts with the environment, and we construct engineering models such as the BRDF and discuss various simplifications into more basic lighting and shading models. Finally, we discuss ray tracing technology for creating virtual images, while drawing parallels between ray tracers and real world cameras in order to illustrate various concepts. Anti-aliasing and acceleration structures are also discussed. The final class project consists of building out a ray tracer to create a visually compelling image. Starter codes and code bits will be provided here and there to aid in development, but this class focuses on what you can do with the code as opposed to what the code itself looks like. Therefore grading is weighted towards in person 'demos' of the code in action - creativity and the production of impressive visual imagery are highly encouraged. (Stanford)
CS 248A: Computer Graphics: Rendering, Geometry, and Image Manipulation (34) graphics
This course provides a comprehensive introduction to interactive computer graphics, focusing on fundamental concepts and techniques, as well as their cross-cutting relationship to multiple problem domains in interactive graphics (such as rendering, animation, geometry, image processing). Topics include: 2D and 3D drawing, sampling theory, interpolation, rasterization, image compositing, the real-time GPU graphics pipeline (and parallel rendering), VR rendering, geometric transformations, curves and surfaces, geometric data structures, subdivision, meshing, spatial hierarchies, image processing, time integration, physically-based animation, and inverse kinematics. The course will involve several in-depth programming assignments and a self-selected final project that explores concepts covered in the class. (Stanford)
CS 248B: Fundamentals of Computer Graphics: Animation and Simulation (3) graphics
This course provides a comprehensive introduction to computer graphics, focusing on fundamental concepts and techniques in Computer Animation and Physics Simulation. Topics include numerical integration, 3D character modeling, keyframe animation, skinning/rigging, inverse kinematics, rigid body dynamics, deformable body simulation, and fluid simulation. (Stanford)
CS 348A: Computer Graphics: Geometric Modeling & Processing (3) graphics
The mathematical tools needed for the geometrical aspects of computer graphics and especially for modeling smooth shapes. The course covers classical computer-aided design, geometry processing, and data-driven approaches for shape generation. Fundamentals: homogeneous coordinates and transformation. Theory of parametric and implicit curve and surface models: polar forms, Bézier arcs and de Casteljau subdivision, continuity constraints, B-splines, tensor product, and triangular patch surfaces. Subdivision surfaces and multi-resolution representations of geometry. Surface reconstruction from scattered data points. Geometry processing on meshes, including simplification and parametrization. Deep neural generative models for 3D geometry: parametric and implicit approaches, VAEs and GANs. (Stanford)
CS 348B: Computer Graphics: Image Synthesis Techniques (34) graphics
Intermediate level, emphasizing high-quality image synthesis algorithms and systems issues in rendering. Topics include: Reyes and advanced rasterization, including motion blur and depth of field; ray tracing and physically based rendering; Monte Carlo algorithms for rendering, including direct illumination and global illumination; path tracing and photon mapping; surface reflection and light source models; volume rendering and subsurface scattering; SIMD and multi-core parallelism for rendering. Written assignments and programming projects. (Stanford)
CS 348C: Computer Graphics: Animation and Simulation (3) graphics
Core mathematics and methods for computer animation and motion simulation. Traditional animation techniques. Physics-based simulation methods for modeling shape and motion: particle systems, constraints, rigid bodies, deformable models, collisions and contact, fluids, and fracture. Animating natural phenomena. Methods for animating virtual characters and crowds. Additional topics selected from data-driven animation methods, realism and perception, animation systems, motion control, real-time and interactive methods, and multi-sensory feedback. (Stanford)
CS 348E: Character Animation: Modeling, Simulation, and Control of Human Motion (3) graphics
This course introduces technologies and mathematical tools for simulating, modeling, and controlling human/animal movements. Students will be exposed to integrated knowledge and techniques across computer graphics, robotics, machine learning and biomechanics. The topics include numerical integration, 3D character modeling, keyframe animation, skinning/rigging, multi-body dynamics, human kinematics, muscle dynamics, trajectory optimization, learning policies for motor skills, and motion capture. Students who successfully complete this course will be able to use and modify physics simulator for character animation or robotic applications, to design/train control policies for locomotion or manipulation tasks on virtual agents, and to leverage motion capture data for synthesizing realistic virtual humans. The evaluation of this course is based on three assignments and an open-ended research project. (Stanford)
CS 348I: Computer Graphics in the Era of AI (34) graphics
This course introduces deep learning methods and AI technologies applied to four main areas of Computer Graphics: rendering, geometry, animation, and imaging. We will study a wide range of problems on content creation for images, shapes, and animations, recently advanced by deep learning techniques. For each problem, we will understand its conventional solutions, study the state-of-the-art learning-based approaches, and critically evaluate their results as well as the impacts to researchers and practitioners in Computer Graphics. The topics include differentiable rendering/neural rendering, BRDF estimation, texture synthesis, denoising, procedural modeling, view synthesis, colorization, style transfer, motion synthesis, differentiable physics simulation, and reinforcement learning. Through programming projects and homework, students who successfully complete this course will be able to use neural rendering algorithms for image manipulation, apply neural procedural modeling for shape and scene synthesis, exploit data-driven methods for simulating physical phenomena, and implement policy learning algorithms for creating character animation. (Stanford)
CS 348K: Visual Computing Systems (34) graphics
Visual computing tasks such as computational photography, image/video understanding, and real-time 3D graphics are key responsibilities of modern computer systems ranging from sensor-rich smart phones, autonomous robots, and large data centers. These workloads demand exceptional system efficiency and this course examines the key ideas, techniques, and challenges associated with the design of parallel, heterogeneous systems that execute and accelerate visual computing applications. This course is intended for graduate and advanced undergraduate-level students interested in architecting efficient graphics, image processing, and computer vision systems (both new hardware architectures and domain-optimized programming frameworks) and for students in graphics, vision, and ML that seek to understand throughput computing concepts so they can develop scalable algorithms for these platforms. Students will perform daily research paper readings, complete simple programming assignments, and compete a self-selected term project. (Stanford)
CS 348N: Neural Models for 3D Geometry (3) graphics
Generation of high-quality 3D models and scenes by leveraging machine learning tools and approaches. Survey of geometry representations. Public 3D object and scene data sets. Neural architectures for geometry, including deep architectures for point clouds and meshes. Generative models for 3D: autoencoders, GANs, neural implicits, neural ODEs, autoregressive models. Conditional generation based on images or partial geometry. Variation generation. Evaluation metrics for content generation. Use of synthetic data in ML training pipelines. (Stanford)
CS 448B: Data Visualization (34) graphics
Techniques and algorithms for creating effective visualizations based on principles from graphic design, visual art, perceptual psychology, and cognitive science. Topics: graphical perception, data and image models, visual encoding, graph and tree layout, color, animation, interaction techniques, automated design. Lectures, reading, and project. (Stanford)
CS 448Z: Physically Based Animation and Sound (34) graphics
Intermediate level, emphasizing physically based simulation techniques for computer animation and synchronized sound synthesis. Topics vary from year to year, but include the simulation of acoustic waves, and integrated approaches to visual and auditory simulation of rigid bodies, deformable solids, collision detection and contact resolution, fracture, fluids and gases, and virtual characters. Students will read and discuss papers, and do programming projects. (Stanford)
CS 476A: Music, Computing, Design: The Art of Design (34) graphics
This course explores the artful design of software tools, toys, games, instruments, and experiences. Topics include programming, audiovisual design, strategies for crafting interactive systems, game design, as well as aesthetic and social considerations of shaping technology in our world today. Course work features several programming assignments with an emphasis on critical design feedback, reading responses, and a 'design your own' final project. (Stanford)
CPSC 040: Computer Graphics (1) graphics
Computer graphics focuses on the creation and manipulation of digital imagery. We cover the modeling, rendering, and animating of geometric object in two (2D) and three (3D) dimensions. Topics include drawing algorithms for 2D geometric primitives (points, lines, polygons), geometric matrix transformations, projective geometry, geometric object representations, hidden surface removal, hierarchical modeling, shading, lighting, shadows, ray-tracing, procedural (non-geometric) modeling, texture mapping, and animation. Labs will explore various tools for rendering graphics, including pixel buffers, OpenGL, shading languages, and general purpose GPU computing. (Swarthmore)
CPSC 056: Computer Animation (1) graphics
The goal of this course is to give students a foundation for programming animated and interactive graphics. In particular, we will “look under the hood” at the algorithms used by game engines and modeling tools to create authorable, interactive characters and special effects. Labs will give students hands on experience implementing algorithms in C++ as well as opportunities to derive their own unique animations. Topics will include mathematical foundations (coordinate systems, transformations, quaternions), interpolation techniques, keyframing, motion capture and procedural animation, and physically-based systems. (Swarthmore)
CSCE 441: Computer Graphics (3) graphics
Principles of interactive computer graphics; 2-D and 3-D rendering pipelines, including geometric object and view transformations, projections, hidden surface removal, and rasterization; lighting models for local and global illumination; hierarchical models of 3-D objects; systems and libraries supporting display and user interaction. (Texas A&M)
CSCE 443: Game Development (3) graphics
Aesthetic and technical aspects of computer game development, including game mechanics, story development, content creation and game programming; includes game design, interface design, 3D modeling and animation, graphics algorithms, shader programming and artificial intelligence; group project includes the design and development of a game from start to finish. (Texas A&M)
CSCE 446: Virtual Reality (3) graphics
Theory and practice of virtual reality; interactive 3D virtual environments; input/output devices, 3D interaction techniques, augmented reality, role of realism in VR, navigation techniques, design guidelines and evaluation methods. (Texas A&M)
CSCE 447: Data Visualization (3) graphics
Visual representation and design of data and information; 3D visualization, infographics, data narratives, principles of visual data encoding and interaction techniques. (Texas A&M)
CSCE 448: Computational Photography (3) graphics
Cameras and the image formation process; basic image and video processing tools like sampling, filtering and pyramids; several image-based algorithms, including panorama creation, lightfields, image retargeting, high dynamic range imaging and texture synthesis. (Texas A&M)
CSCE 450: Computer Animation (3) graphics
Investigation of computational problems in computer animation; study of the mathematical and algorithmic foundations behind various techniques used for computer animation for real-time and offline use. (Texas A&M)
CS473: Computer Graphics (3) graphics
This course concerns computer programs that draw two- and three-dimensional objects on computer output devices and receive input from users through graphical input devices. Cadets implement interactive programs through a commonly available graphical application programmers' interface (API). They learn about graphical hardware devices and the elegant algorithms that underlie the API, including elementary computational geometry, continuous time physical simulation, homogeneous transformations, parametric forms, clipping, shading, color, and surface rendering. These concepts are all illustrated with examples of military data visualization including two-dimensional maps and three-dimensional battle simulation and terrain visualization. (West Point)
CS 184: Foundations of Computer Graphics (4) graphics
Techniques of modeling objects for the purpose of computer rendering: boundary representations, constructive solids geometry, hierarchical scene descriptions. Mathematical techniques for curve and surface representation. Basic elements of a computer graphics rendering pipeline; architecture of modern graphics display devices. Geometrical transformations such as rotation, scaling, translation, and their matrix representations. Homogeneous coordinates, projective and perspective transformations. Algorithms for clipping, hidden surface removal, rasterization, and anti-aliasing. Scan-line based and ray-based rendering algorithms. Lighting models for reflection, refraction, transparency. (Berkeley)
CSE 163: Advanced Computer Graphics (4) graphics
Topics include an overview of many aspects of computer graphics, including the four main computer graphics areas of animation, modeling, rendering, and imaging. Programming projects in image and signal processing, geometric modeling, and real-time rendering. (UCSD)
CSE 165: 3-D User Interaction (4) graphics
This course focuses on the design of three-dimensional (3-D) user interfaces, VR devices, and interaction techniques. The course consists of lectures, student presentations, and programming assignments. Students will be expected to create VR applications to learn how VR displays and 3-D interactions work. (UCSD)
CSE 166: Image Processing (4) graphics
Principles of image formation, analysis, and representation. Image enhancement, restoration, and segmentation; stochastic image models. Filter design, sampling, Fourier and wavelet transforms. Selected applications in computer graphics and machine vision. (UCSD)
CSE 167: Computer Graphics (4) graphics
Representation and manipulation of pictorial data. Two-dimensional and three-dimensional transformations, curves, surfaces. Projection, illumination, and shading models. Raster and vector graphic I/O devices; retained-mode and immediate-mode graphics software systems and applications. (UCSD)
CSE 168: Computer Graphics II: Rendering (4) graphics
Weekly programming assignments that will cover graphics rendering algorithms. During the course the students will learn about ray tracing, geometry, tessellation, acceleration structures, sampling, filtering, shading models, and advanced topics such as global illumination and programmable graphics hardware. (UCSD)
CSE 169: Computer Animation (4) graphics
Advanced graphics focusing on the programming techniques involved in computer animation. Algorithms and approaches for both character animation and physically based animation. Particular subjects may include skeletons, skinning, key framing, facial animation, inverse kinematics, locomotion, motion capture, video game animation, particle systems, rigid bodies, clothing, and hair. (UCSD)
CMPSC 180: Computer Graphics (4) graphics
Overview of OpenGL graphics standard, OpenGL statemachine, other 3D graphics libraries, 3D graphicspipeline, 3D transformations and clipping, colormodel, shading model, shadow algorithms, texturing,curves and curved surfaces, graphics hardware,interaction devices and techniques (UCSB)
CS 415: Game Development (3) graphics
A team and project-based course on the technical aspects of video game development and game engine internals: geometric modeling, game physics and AI, shader programming, real-time physically based rendering, and software engineering practices within the game industry. (Illinois)
CS 416: Data Visualization (3) graphics
Elements of databases, computer graphics and perceptual psychology combined to utilize the human visual system to improve user understanding of large datasets. Topics include appropriate and effective selection and construction of charts, organization of dashboards, and design for user engagement and interaction. (Illinois)
CS 417: Virtual Reality (3) graphics
Provides both a deep understanding of the fundamentals of virtual reality (VR) and practical experience implementing VR systems. Topics covered include visual and audio display technology, tracking, human perception and psychophysics, building user interfaces for VR, and analyzing VR experiences. (Illinois)
CS 418: Interactive Computer Graphics (3) graphics
Basic mathematical tools and computational techniques for modeling, rendering, and animating 3-D scenes. Same as CSE 427. (Illinois)
CS 419: Production Computer Graphics (3) graphics
Advanced methods for representing, displaying, and rendering two-, three-, and four-dimensional scenes. General algebraic curves and surfaces, splines, Gaussian and bump-function representation, fractals, particle systems, constructive solid geometry methods, lighting models, radiosity, advanced ray-tracing methods, surface texturing animation techniques, data visualization methods. (Illinois)
CS 467: Social Visualization (3) graphics
Visualizing social interaction in networked spaces: investigation of patterns in networked communications systems such as messaging (email, instant messaging), social networking sites and collaborative sites; social network theory and visualizations; exploration of how to move beyond existing visualization techniques; visualizing the network identity over compilations of online data. (Illinois)
CS 441: Introduction to Computer Graphics (4) graphics
Introduction to the hardware, geometrical transforms, interaction techniques, and shape representation schemes that are important in interactive computer graphics. Programming assignments using contemporary graphics hardware and software systems. (UO)
CIS 4600: Interactive Computer Graphics (1) graphics
This course focuses on programming the essential mathematical and geometric concepts underlying modern computer graphics. Using 3D interactive implementations, it covers fundamental topics such as mesh data structures, transformation sequences, rendering algorithms, and curve interpolation for animation. Students are also introduced to two programming languages widely used in the computer graphics industry: C++ and GLSL. The curriculum is heavily project-based, and culminates in a group project focused on building an interactive first-person world exploration application using the various real-time interaction and rendering algorithms learned throughout the semester. (Penn)
CIS 4610: Advanced Rendering (1) graphics
This course is designed to provide a comprehensive overview to computer graphics techniques in 3D modeling, image synthesis, and rendering. Topics cover: geometric transformations, geometric algorithms, software systems, 3D object models (surface, volume and implicit), visible surface algorithms, image synthesis, shading, mapping, ray tracing, radiosity, global illumination, sampling, anti- aliasing, Monte Carlo path tracing, and photon mapping. (Penn)
CIS 4620: Computer Animation (1) graphics
This course covers core subject matter common to the fields of robotics, character animation and embodied intelligent agents. The intent of the course is to provide the student with a solid technical foundation for developing, animating and controlling articulated systems used in interactive computer game virtual reality simulations and high-end animation applications. (Penn)
CIS 5600: Interactive Computer Graphics (1) graphics
This course focuses on programming the essential mathematical and geometric concepts underlying modern computer graphics. Using 3D interactive implementations, it covers fundamental topics such as mesh data structures, transformation sequences, rendering algorithms, and curve interpolation for animation. Students are also introduced to two programming languages widely used in the computer graphics industry: C++ and GLSL. The curriculum is heavily project-based, and culminates in a group project focused on building an interactive first-person world exploration application using the various real-time interaction and rendering algorithms learned throughout the semester. (Penn)
CIS 5610: Advanced Computer Graphics (1) graphics
This course is designed to provide a comprehensive overview to computer graphics techniques in 3D modeling, image synthesis, and rendering. Topics cover: geometric transformations, geometric algorithms, software systems, 3D object models (surface, volume and implicit), visible surface algorithms, image synthesis, shading, mapping, ray tracing, radiosity, global illumination, sampling, anti- aliasing, Monte Carlo path tracing, and photon mapping. (Penn)
CIS 5620: Computer Animation (1) graphics
This course covers core subject matter common to the fields of robotics, character animation and embodied intelligent agents. The intent of the course is to provide the student with a solid technical foundation for developing, animating and controlling articulated systems used in interactive computer games, virtual reality simulations and high-end animation applications. The course balances theory with practice by 'looking under the hood' of current animation systems and authoring tools and exams the technologies and techniques used from both a computer science and engineering perspective. (Penn)
CIS 5630: Physically Based Animation (1) graphics
This course introduces students to common physically based simulation techniques for animation of fluids and gases, rigid and deformable solids, cloth, explosions, fire, smoke, virtual characters, and other systems. Physically based simulation techniques allow for creation of extremely realistic special effects for movies, video games and surgical simulation systems. (Penn)
CIS 5640: Game Design and Development (1) graphics
The intent of the course is to provide students with a solid theoretical understanding of the core creative principles, concepts, and game play structures/schemas underlying most game designs. The course also will examine game development from an engineering point of view, including: game play mechanics, game engine software and hardware architectures, user interfaces, design documents, playtesting and production methods. (Penn)
CIS 5660: Procedural Computer Graphics (1) graphics
Sprawling cities, dense vegetation, infinite worlds - procedural graphics empower technical artists to quickly create complex digital assets that would otherwise be unfeasible. This course is intended to introduce the mathematical and algorithmic foundations of procedural modeling and animation techniques, and to offer hands-on experience designing and implementing visual recipes in original graphics projects by applying these methods. Students should have a strong interest in both the creative and technical aspects of computer graphics, as well as a solid programming background. (Penn)
CIS 5680: Game Design Practicum (1) graphics
The objective of the game design practicum is to provide students with hands on experience designing and developing 3D games as well as Virtual Reality (VR) and Augmented Reality (AR) applications. Working in teams of three, students will gain experience brainstorming original game concepts, writing formal design documents and developing a fully functional prototype of their game/application. Technical features to be designed and implemented include novel game mechanics and/or user interaction models, game physics, character animation, game AI (i.e. movement control, path planning, decision making, etc.), sound effects and background music, 2D graphical user interface (GUI) design and multiplayer networking capabilities. State-of-the-art game engine middleware such as the Unity3D and Unreal game engines will be used to expose student to commercial-grade software, production methodologies and art asset pipelines. As a result of their game development efforts, students will learn first-hand about the creative process, design documentation, object-oriented software design and engineering, project management (including effective team collaboration and communication techniques), design iteration through user feedback and play-testing, and most importantly, what makes a game or virtual reality experience interesting and fun to play. (Penn)
CSCI 281: Pipelines for Games and Interactives (4) graphics
Explores the aesthetic development/technical implementation necessary to achieve unique, compelling, intuitive visual design in games. Students will develop group visual game design portfolios. (USC)
CSCI 420: Computer Graphics (4) graphics
Computer graphics, OpenGL, 2D and 3D transformations, Bézier splines, computer animation, rendering including ray tracing, shading and lighting, artistic rendering, virtual reality, visualization. (USC)
ITP 481: Game Programming Professional Development (2) graphics
Application of mathematics, physics, geometry and programming algorithms in the context of video game programming practice. (USC)
CTAN 443L: Character Development for 3-D Animation and Games (2) graphics
Development, modeling, and animation with an emphasis on character setup features: rigging, skeletons, deformers and scripting. Applying principles of traditional animation to 3-D character rig/puppet. (USC)
CTAN 452: Introduction to 3-D Computer Animation (2) graphics
Lecture and laboratory in computer animation: geometric modeling, motion specification, lighting, texture mapping, rendering, compositing, production techniques, systems for computer-synthesized animation using Maya software. (USC)
CMPU 378: Graphics (1) graphics
A survey of computational and mathematical techniques for modeling and rendering realistic images of three-dimensional scenes. Topics include: event-driven user interfaces; geometric transformations and projections; scene graphs; implicit and parametric surfaces; models of color and light; surface shading and texturing; local and global rendering algorithms; and an introduction to computer animation. (Vassar)
CSE 450A: Video Game Programming (3) graphics
This course teaches the core aspects of a video game developer's toolkit. Students work in groups and with a large game software engine to create and playtest a full-featured video game. Students will explore topics around the design of games through analysis of current games. Students have the opportunity to explore additional topics including graphics, artificial intelligence, networking, physics, and user interface design through their game project. (Washington U.)
CSE 451A: Video Game Programming II (3) graphics
This course is a continuation of CSE 450A Video Game Programming I. Students will work in groups and with a large game software engine to make a full-featured video game. Students will have the opportunity to work on topics in graphics, artificial intelligence, networking, physics, user interface design, and other topics. (Washington U.)
CSE 452A: Computer Graphics (3) graphics
Introduction to computer graphics. The course covers fundamental concepts, data structures and algorithms related to the construction, display and manipulation of three-dimensional objects. Topics include scan-conversion, basic image processing, transformations, scene graphs, camera projections, local and global rendering, fractals, and parametric curves and surfaces. Students develop interactive graphics programs using C++ language. (Washington U.)
CSE 457A: Introduction to Visualization (3) graphics
Disciplines such as medicine, business, science, and government are producing enormous amounts of data with increasing volume and complexity. In this course, students will study the principles for transforming abstract data into useful information visualizations. (Washington U.)
CS 307: Computer Graphics (1) graphics
A survey of topics in computer graphics with an emphasis on fundamental techniques. Topics include: graphics hardware, fundamentals of three-dimensional graphics including modeling, projection, coordinate transformation, synthetic camera specification, color, lighting, shading, hidden surface removal, animation, and texture-mapping. We also cover the mathematical representation and programming specification of lines, planes, curves, and surfaces. Students will build graphics applications using a browser-based platform. (Wellesley)
COMP 350: Computational Media: Videogame Development (2) graphics
This course examines the interplay of art and science in the development of contemporary videogames using the Unity development platform and commercial artistic game tools. Students develop a comprehensive understanding of computational media, including legal and commercial aspects, combined with hands-on experience in a creative process that integrates design, art, and coding. There will be discussions with invited industry leaders in various subject areas. Students will have the opportunity to work as part of development teams and create working prototypes to better understand the challenges and rewards of producing graphic interactive software within a professional context. (Wesleyan)
CSCI 371: Computer Graphics (1) graphics
This course covers the fundamental mathematics and techniques behind computer graphics, and will teach students how to represent and draw 2D and 3D geometry for real-time and photorealistic applications. Students will write challenging implementations from the ground up in C/C++, OpenGL, and GLSL. Topics include transformations, rasterization, ray tracing, immediate mode GUI, forward and inverse kinematics, and physically-based animation. Examples are drawn from video games, movies, and robotics. (Williams)
CPSC 446: Data and Information Visualization (1) graphics
Visualization is a powerful tool for understanding data and concepts. This course provides an introduction to the concepts needed to build new visualization systems, rather than to use existing visualization software. (Yale)
CPSC 478: Computer Graphics (1) graphics
Introduction to the basic concepts of two- and three-dimensional computer graphics. (Yale)