CS 412/512 Introduction to Computer Graphics
Fall 2025
COURSE INFORMATION
| Instructor | Prof. Zhu Wang |
| zhuwang [at] unm [dot] edu | |
| Website | cs.unm.edu/~zhuwang |
| Time | Mon / Wed / Fri, 11:00 am – 11:50 am |
| Location | Room 214, Mechanical Engineering Building |
| Office Hours | Wed / Fri, 9:50 am - 10:50 am, FEC 3130 |
COURSE DESCRIPTION
This course will cover the fundamentals of 2D and 3D computer graphics, such as curves, 3D modeling, animation, and rendering. At the end of the semester, the students will be able to understand the core concepts of computer graphics and build their own real-time graphics pipeline that runs in a web browser.
PREREQUISITES
This course requires students to have prior programming experience, basic level linear algebra and high-school level geometry. The course projects will be implemented with WebGL in JavaScript. Students should also be familiar with basic usage of WebGL (WebGL Fundamentals Tutorials) by the 3rd week of the semester. If you are already familiar with Python, Java, C++, or a similar high-level language, you should be able to handle JavaScript quickly and complete the course successfully.
TEXTBOOK/RECOMMENDED READING (OPTIONAL)
Interactive Computer Graphics: A Top-Down Approach with WebGL, 8th Edition. Angel & Shreiner, 2020
WEEKLY TOPIC BREAKDOWN
- Introduction, overview, history
- Image formation (cameras, pixels, color, etc.)
- Mathematical Foundations
- 2D and 3D transformations
- Rasterization
- WebGL
- Viewing and projection
- Implicit representation and Geometric primitives
- Hierarchical modeling
- Lighting and shading
- Texture mapping
- Ray tracing
- Curves and Surfaces
- Particle system
- Final project presentation
GRADING
CS 412 and CS 512 cover the same content; however, students in CS 412 and CS 512 will be graded under different scales.
Grade Breakdown
| Component | Weight |
|---|---|
| Project Assignments | 65% |
| Midterm Exam | 10% |
| Final Project | 25% |
Grading scale for CS 412
92–100 A+, 88–91 A, 84–87 A-, 80–83 B+, 76–79 B, 72–75 B-, 70–72 C+, 66–69 C, 62–66 C-, 55–61 D, <55 F
Grading scale for CS 512
97–100 A+, 93–96 A, 90–92 A-, 87–89 B+, 83–86 B, 80–82 B-, 77–79 C+, 73–76 C, 70–72 C-, 60–69 D, <60 F
Incomplete and Late Submission
- Incomplete or no submission will receive zero point.
- Some assignments build on previous ones, so it is important to submit each assignment on time. Submissions after the deadline even for one second are considered one week late. Late work loses 30% per week and receives zero more than two weeks.
ACADEMIC INTEGRITY
-
Academic dishonesty may result in failing the assignment or the course. All academic dishonesty activities will be reported to the department.
-
It is allowed to use AI for learning purposes. But all students must fully understand their code! There will be a random check after each submission, where they may be asked questions about the part of the code they write (with comments removed). Submitting AI-generated code, copying from others without proper disclosure, or improper use of online resources will be considered as academic dishonesty.