CMSI 371
Computer Graphics
Spring 2021
- Note
- This page is maintained as an archival record of the course shown above, and as such, some links on this page may no longer be valid nor accessible. They are kept here as a record of the resources that were available at the time of the course offering.
- Brightspace: Where you can access recordings of synchronous class sessions and supplementary asynchronous content, as well as check your grades
- We will use GitHub Classroom to manage and submit assignments
- Some information regarding being fully online
Assignments
-
Assignment 0204
extended to 0205 Fun with their 3D library, part 1
Setup
- Their library is three.js
- Acquire your own React-wrapped three.js playground for personal experimentation and exploration
- Assignment 0218 extended to 0223 Fun with their 3D library, part 2 Setup
-
Assignment 0311
Pixel-level primitives and filters
Setup
- Sample primitives and filters, wrapped in a demo web application
- Color Science from Khan Academy’s Pixar in a Box: Pay particular attention to the RGB color model module and its accompanying practice exercise
-
Assignment 0406a
Static scene based on our polygon mesh library
- Need some inspiration? Check out some of Ed Catmull and Fred Parke’s early work from the University of Utah, 1972 (h/t Megan Reyes!)
-
Assignment 0406b
partially extended—see below
Our own matrix library
- The “Project the Matrix” section/deliverable (“Orthographic or perspective projection can be applied to the scene”) can be deferred to Assignment 0420
- i.e., The matrices themselves are due (they are spelled out in this PDF) but their usage does not need to be coded up until Assignment 0420
- Assignment 0420 extended to 0422 Our lights, our camera…
- Assignment 0506 extended to 0508 …Your action!
Course Content
-
Three.js Fundamentals: A particularly useful link from three.js’s
Useful Links
page
- Starting lesson
-
“Responsive design”—but really about how the camera’s aspect ratio, viewport dimensions,
and web
canvas
dimensions interact - “Scenegraph”—a.k.a. Scenes, the top-level three.js data structure
- Cameras
- “Primitives”—a.k.a. Geometries
- Materials
- Lights
- Textures
-
Readings on easing and tweening
- Robert Penner’s book chapter Motion, Tweening, and Easing
- Gilmore Davidson’s presentation Ease Yourself into Animation
- 3D Object Modeling
- Graphics = Light = Color = Memory
- Hello GL!
- The Math of Space
- Transforms: More Than Meets the Eye
- Projection
- Look At
- Modeling Light
- Clipping, Hidden Surface Removal