Stanford Root

Schedule

Stanford Root

Schedule

CS 148

Introduction to Computer Graphics and Imaging

UNITS:3-4
GRADING:Letter or Credit/No Credit
LEVEL:Undergrad
GER:WAY-CE

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.This is the first course in the computer graphics sequence at Stanford. Topics include: Scanline Rendering; Triangles; Rasterization; Transformations; Shading; Triangle Meshes; Subdivision; Marching Cubes; Textures; Light; Color; Cameras; Displays; Tone Mapping; BRDF; Lighting Equation; Global Illumination; Radiosity; Ray Tracing; Acceleration Structures; Sampling; Antialiasing; Reflection; Transmission; Depth of Field; Motion Blur; Monte Carlo; Bidirectional Ray Tracing; Light Maps.

Syllabus for selected term:
View Autumn 2026 Syllabus

Sections

1 Term
Lecture 1Open
ID: 2031
0 / 999 enrolled
DAYS:Tuesday, Thursday
TIME:12 PM – 1:20 PM
LOCATION:NVIDIA Auditorium
INSTRUCTOR:
Fedkiw, Ron
units

CS 148: Introduction to Computer Graphics and Imaging

3-4 units · Letter or Credit/No Credit · GER: WAY-CE

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.This is the first course in the computer graphics sequence at Stanford. Topics include: Scanline Rendering; Triangles; Rasterization; Transformations; Shading; Triangle Meshes; Subdivision; Marching Cubes; Textures; Light; Color; Cameras; Displays; Tone Mapping; BRDF; Lighting Equation; Global Illumination; Radiosity; Ray Tracing; Acceleration Structures; Sampling; Antialiasing; Reflection; Transmission; Depth of Field; Motion Blur; Monte Carlo; Bidirectional Ray Tracing; Light Maps.

Offered in Autumn 2026 at Stanford University.

Autumn 2026 sections

  • Lecture — Tuesday Thursday 12:00 PM – 1:20 PM — NVIDIA Auditorium — Fedkiw, Ron (Undergrad)

More CS courses

  • CS 145: Introduction to Big Data Systems
  • CS 146: Game Development
  • CS 146J: Full-Stack Web Programming
  • CS 146S: The Modern Software Developer
  • CS 147: Introduction to Human-Computer Interaction Design
  • CS 147L: Cross-platform Mobile App Development
  • CS 149: Parallel Computing
  • CS 151: Logic Programming
  • CS 152: Trust and Safety (COMM 122, INTLPOL 267)
  • CS 153: Frontier Systems
  • CS 154: Introduction to the Theory of Computation
  • CS 155: Computer and Network Security

All CS courses · All departments