CPSC 424 | Computer Graphics | Fall 2025 |
On this page:
Course Description and Objectives |
This course studies the principles underlying the generation and display of 3D computer graphics. Topics include geometric modeling, 3D viewing and projection, lighting and shading, color, and the use of one or more technologies and packages such as WebGL, OpenGL, and Blender. Advanced topics might include ray tracing, global illumination, texture- and bump-mapping, the mathematics of curves and surfaces, volumetric rendering, and animation. By the end of the course, the successful student will be able to:
Specific skills and abilities include:
|
---|---|
Class Format and Expectations |
This course has a required lab in addition to three-times-a-week class meetings. You are expected to attend all scheduled class and lab meetings (a total of 4.5 hours per week), and should expect to spend approximately 8-10 hours per week on average (*) on additional work (readings, labs, projects, studying) outside of class. (*) The assigned work is intended to take about this much time, though your experience may vary — it is certainly easy to get stuck on something that takes a long time to figure out! If you routinely spend substantially more time and you feel like you are spinning your wheels and not making progress, you should visit office hours for help. If you routinely spend much less time, you may not be successfully mastering the material — challenge yourself by doing more than the minimum requirements for an assignment. |
Prerequisites |
CPSC 329 is required (prerequisite or corequisite). Programming in this course will be done in JavaScript and GLSL. These languages will be introduced in the course; it is expected that students are comfortable enough with core constructs (variables, loops, conditionals, arrays, subroutines) to be able to pick up the key elements of these new languages. |
Course Materials |
TextbookWe will be using Professor Eck's Introduction to Computer Graphics, a free online textbook. It is possible to download a PDF or order a printed version of the book if desired. (Please do not print chunks of the book on the department printers.) SoftwareAll of the software needed for this course is available on the Linux machines in Demarest 002, in the Math/CS department lab in Lansing 310, and remotely through the Linux VDI. It is recommended that you access the necessary software through Linux. If you want to set up your own computer, you will need to install:
|