| |
|
Logistics |
|
Grading Policy |
|
Syllabus |
|
Links |
|
Announcements |
|
Course Folder |
| |
|
Labs: |
|
|
| |
|
PAs: |
|
|
|
|
1. Rasterization
|
|
2. Scene, Camera, Lights!
|
|
3. Buffers, Textures, Shaders
|
|
4. Animation
|
|
|
Image Gallery:
PA1:
F15,
F14,
W13,
W12,
W10
PA2:
F15,
S10,
W10
PA3:
F15,
F14,
W13
PA4:
S10,
W10
|
|
| |
|
HWs: |
|
|
Don't see the menu?
|
UM EECS487: Fall 2015 Syllabus and Lecture Slides
UM EECS487: Fall 2015 Syllabus and Lecture Slides
This page is only for printing. Links to lecture notes are broken.
For links to lecture notes, go to main
page.
Note:
- The notation "up to section K" of a reading
material means "up to and including section K."
- "Demoes" may be shown in class. "Recommended readings" would
be the first thing to consult if you're confused with the lecture
material. "Additional readings" could help understanding.
"Optional readings" may be fun. None are required.
These are often the first publication of an idea. They often explain
the ideas therein in their most basic forms, unadulterated with
embelishments, contractions, and abstractions that came later. You
get to view the "foundational stones," so to speak, up close,
before they have been abstracted away into a sentence or two.
You also get a chance to "observe the methodology of great
scientists . . . .
We can see how they framed problems, performed derivations, conducted
experiments, and reported results in a way that enabled contributions
that stood the test of time. With careful and clever methodology one
can make discoveries beyond of what is directly sought, even if the
importance of those discoveries will take years to fully
appreciate."
Tentative syllabus: October | November | December
Wed 09/09
Assigned Lab0
|
Introduction to
computer graphics and the course
Recommended reading:
Additional readings:
Optional reading:
|
Fri 09/11
|
Polygonal mesh, graphics pipeline
Recommended reading:
|
Fri 09/11 LAB
|
OpenGL and GLUT
Additional readings:
Optional reading:
|
|
|
Mon 09/14 LAB Assigned PA1
|
Lab0: Warmup
|
Wed 09/16
|
The GPU, raster graphics, line rasterization
Recommended reading:
Demoes:
Additional reading:
Optional readings:
- Akenine-Moeller and Stroem, "GPU
for Handhelds," Proc. of the IEEE, 96(5):779-789, May 2008 (section V.A on Tiling Architectures).
- Smith, A.R., A Pixel is not a Little Square, 1995.
- Bresenham, J.E., "Algorithm for Computer Control of a Digital Plotter," IBM Systems Journal, 4(1):25-30, 1965.
|
Fri 09/18
|
Line clipping
Recommended reading:
|
Fri 09/18 LAB
|
Lab1: Line rasterization
|
|
|
Mon 09/21
|
Triangle rasterization, polygon clipping
Recommended reading:
- TP3 Sections 2.5, 2.6, 2.9.3.
|
Tue 09/22, 5pm
|
Lab1 Due during Lisa's office hour
|
Wed 09/23
|
Occlusion culling
Recommended reading:
- TP3 Section 2.8, 5.5.1-5.6, Appendix E.
Demoes:
Additional reading:
Optional reading:
|
Fri 09/25
|
Anti-aliasing, compositing and the alpha channel; PA1 demo
Additional reading:
Optional reading:
|
Fri 09/25 LAB
|
Lab2: Triangle rasterization
|
|
|
Mon 09/28 Assigned HW1
|
2D transforms: linear and affine transforms
Recommended reading:
- TP3 Sections 3.1-3.6, 3.10, Appendix A.
Demoes:
Additional reading:
Optional reading:
|
Wed 09/30
|
Homogeneous coordinates and affine transforms, transforming normals
Recommended readings:
Demo:
Additional reading:
|
Fri 10/02
|
3D modeling transforms, Rodrigues formula, change of basis
Recommended reading:
|
Fri 10/02 LAB
|
Vertex array, viewing transforms
Recommended readings:
Additional reading:
- Redbook Ch. 2 section on Vertex Arrays, Ch. 7.
|
Sat 10/03 12 noon
PA1 Due
Assigned PA2
|
|
|
|
Mon 10/04
|
Projection and projection transforms
Additional reading:
|
Wed 10/07
|
Projection transforms in OpenGL
Demo:
Additional reading:
|
Fri 10/09
|
Scenegraph; Lighting and reflection (6.3 MB)
Recommended reading:
- TP3 Ch. 9, Sections 12.1-12.3.
Additional readings:
Optional readings:
|
Fri 10/09 LAB
|
Lab3: 3D Modeling and Transforms
|
|
|
Mon 10/12
|
Phong illumination model; Shading (6.5 MB)
Recommended reading:
Additional readings:
- Gouraud, H., "Continuous
Shading of Curved Surfaces," IEEE Trans. on Computers, C-20(6):623-629, June 1971.
- Phong, B-T., "Illumination
for Computer Generated Pictures," CACM, 18(6):311-317, June 1975.
|
Wed 10/14
|
Vertex-buffer object and vertex-array object
Demo:
Additional readings:
Optional readings:
|
Fri 10/16
|
Programmable shaders
Additional reading:
- Redbook Ch. 15.
- TP3 Section 12.12.
- Owens, J.D. et al., "GPU
Computing," Proc. of the IEEE, 96(5):879-899, May 2008 (up to section III.A).
- Cook, "Shade
Trees," Computer Graphics, 18(3):223-231, 1984.
- Hanrahan and Lawson, "A
Language for Shading and Lighting Calculations," Computer Graphics, 24(4):289-298, 1990.
Optional readings:
- Fatahalian and Houston, "A
Closer Look at GPUs," CACM, 51(10):50-57, 2008.
- Akenine-Moeller and Stroem, "GPU
for Handhelds," Proc. of the IEEE, 96(5):779-789, May 2008.
- Blythe, D., "The
Direct3D 10 System," Proc. ACM SIGGRAPH, 2006, and the accompanying
presentation.
- Lindholm, Kilgard, and Moreton, "A
User-Programmable Vertex Engine," Computer Graphics, 35(3):149-158, 2001 (nvidia's GeForce3 vertex engine).
- Mark, Glanville, Akeley, and Kilgard, "Cg:
A system for programming graphics hardware in a C-like language," Computer Graphics, 37(2):896-907, 2003.
- Owens, J.D. et al., "A Survey of General-Purpose Computation on Graphics Hardware," Computer Graphics Forum, 26(1):80-13, 2007.
|
Fri 10/16 LAB
|
Lab4: Viewing and Perspective Transforms
|
|
|
Mon 10/19 |
FALL BREAK |
Wed 10/21 HW1 Due
|
Application-shader interfacing
Demo:
|
Fri 10/23
|
Brief history of graphics hardware, OpenGL ES, OpenGL 3.1+, WebGL: HTML5 canvas element, JavaScript
Demo:
- gl3+webgl.tgz same as above
|
Fri 10/23 LAB
|
Lab5: Lighting and Vertex Buffer Object
|
Sat 10/24 12 noon
PA2 Due
Assigned PA3
|
|
|
|
Mon 10/26
|
NO Lecture: Midterm Review Session
Midterm Exam 6:00-8:00 pm in 1013 Dow
|
Wed 10/28
|
Light and color, color spaces (8.4 MB)
Recommended reading:
Demo:
Additional reading:
Optional reading:
- Rautio, J.C., "The Long road to Maxwell's Equations," IEEE Spectrum, 51(12):36-56, Dec. 2014.
- Newton, I., "New Theory About Light and Colors," Philosophical Transactions of the Royal Society of London, 1671(6):3075-3087, Jan. 1671.
- Maxwell, J.C., "A Dynamical Theory of the Electromagnetic Field," Philosophical Transactions of the Royal Society of London, 1865(155):459-512, Jan. 1865.
|
Fri 10/30
|
Intensity, (high) dynamic range (7.7 MB)
Recommended reading:
- TP3 Sections 11.2, 11.4, 11.5, 10.5.
Optional readings:
|
Fri 10/30 LAB Make-up Lecture
|
Low-level APIs: Metal, D3D12, Vulkan (8.1 MB)
Optional readings:
|
|
|
Mon 11/02
|
Texture mapping: texture coordinates, perspective-correct interpolation, texture sampler (7.4 MB)
Recommended reading:
- TP3 Sections 14.1-14.3, 2.7.
Demoes:
Additional readings:
Optional reading:
|
Wed 11/04
|
Pixel-buffer object and texture filtering: mipmapping, summed-area table, anisotropic filtering
Recommended readings:
Additional readings:
Optional readings:
|
Fri 11/06
|
Bump and normal mapping; procedural textures
Recommended reading:
Demoes:
Additional reading:
Optional readings:
- Blinn, "Simulation
of Wrinkled Surfaces," Computer Graphics, 12(3):286-292, 1978 (lots of OCR errors).
- Perlin, "An
Image Synthesizer," Computer Graphics, 19(3):287-296, 1985.
- Perlin, "Improving
Noise," Transactions on Graphics, 21(3):681-682, 2002.
|
Fri 11/06 LAB
|
Lab6: Textures and Mapped Pixel Buffer Object
|
|
|
Mon 11/09
Assigned HW2
|
Introduction to global illumination and ray tracing (6.3 MB)
Recommended reading:
Demo:
Additional reading:
|
Wed 11/11
|
Ray tracing implementation
Recommended reading:
- Shirley, Ashikmin, and Marschner, Fundamentals of Computer Graphics, Ch. 13, CRC Press, 2009.
|
Fri 11/13
|
Distributed ray tracing
Recommended reading:
Additional readings:
- Cook, Porter, and Carpenter, "Distributed Ray Tracing," Computer Graphics, 18(3):137-145, 1984.
- Cook, "Stochastic Sampling in Computer Graphics," ACM Transaction on Graphics, 5(1):51-72, 1986.
|
Fri 11/13 LAB
|
Lab7: Ray Tracing
|
|
|
Mon 11/16
|
Environment mapping, radiance map, accumulation buffer (5.4 MB)
Recommended reading:
Optional readings:
- Greene, "Environment Mapping and Other Applications of
World Projections," IEEE Computer Graphics and Applications, 6(11):21-29, Nov. 1986.
- Heidrich and Seidel, "Realistic,
Hardware-accelerated Shading and Lighting," Proc. of SIGGRAPH '99, pp. 171-178, 1999.
- Cabral, Olano, and Nemec, "Reflections
Space Image Based Rendering," Proc. of SIGGRAPH '99, pp. 165-170, 1999.
|
Wed 11/18
|
Interactive visual effects with stencil buffer and framebuffer object
Demo:
Additional readings:
- Haeberli and Akeley, "The
Accumulation Buffer: Hardware Support for High-Quality Rendering," Computer Graphics, 24(4):309-318, 1990.
- Yang, Yip, and Xu, "Visual
Effects in Computer Games," IEEE Computer, 42(7):48-56, July 2009
(video clips accompanying the paper).
Optional readings:
|
Fri 11/20
|
Shadow map and ambient occlusion
Recommended reading:
Additional reading:
Optional reading:
|
Fri 11/20 LAB
PA3 Due
Assigned PA4
|
NO LAB: Work on PA3
|
|
|
Mon 11/23
|
Introduction to animation, key-frame animation, kinematics, motion capture (11.2 MB)
Recommended reading:
- TP3 Sections 17.1-17.2.3, 17.3, 17.4.
Demoes:
Additional reading:
|
Wed 11/25
|
Parametric curves and splines; cubic splines: Hermite, cardinal, Catmull-Rom
Recommended reading:
- TP3 Sections 7.1, 7.5 (skim only, skip 7.5.3, 7.5.4)
Demoes:
Additional reading:
|
Fri 11/27
|
THANKSGIVING HOLIDAY
|
Fri 11/27 LAB
|
THANKSGIVING HOLIDAY
|
|
|
Mon 11/30
|
Modeling: polygonal mesh, simplification, LoD, mesh representations (6.6 MB)
|
Wed 12/02
|
Parametric surfaces: swept surfaces, arc length, geometric continuity, Bézier curves (12 MB)
Recommended reading:
Demoes:
Additional reading:
|
Fri 12/04
HW2 Due
|
Natural cubic splines, B-splines, rational curves, NURBS
Recommended reading:
- TP3 Sections 7.3 (skim 7.3.5), 7.4 (plus skim 7.5.3, 7.5.4), 7.6.
Demoes:
Additional reading:
Optional reading:
|
Fri 12/04 LAB
|
Lab8: Projected (Soft) Shadows with Framebuffer Object
|
|
|
Mon 12/07
|
Tensor product and Bézier subdivision (8.5 MB)
|
Wed 12/09
|
(B-spline) Subdivision surfaces (12.5 MB)
Recommended reading:
- TP3 Sections 8.1-8.4 (be sure to apply the errata first)
Demoes:
Additional readings:
- Catmull, E. and Clark, J., "Recursively generated B-spline surfaces on arbitrary topological meshes," Computer-Aided Design, 10(6):350-355, Nov. 1978.
- DeRose, T., Kass, M., and Troung, T., "Subdivision in Character Animation," Computer Graphics, pp. 85-94, 1998.
- Sharp, "Subdivision
Surface Theory," Game Developer Magazine, Jan. 2000.
Optional readings:
- Chaikin, G.M., "An Algorithm for High-Speed Curve Generation," Computer Graphics and Image Processing, 3(4):346-349, Dec. 1974.
- Riesenfeld, R.F., "On Chaikin's Algorithm," Computer Graphics and Image Processing, 4(3):304-310, Sept. 1975.
- Doo, D. and Sabin, M., "Behaviour of Recursive Division Surfaces near Extraordinary Points," Computer-Aided Design, 10(6):356-360, Nov. 1978.
- Catmull, E., A Subdivision Algorithm for Computer Display of Curved Surfaces, Tech. Report UTEC-CSc-74-133, University of Utah, 1974.
|
Fri 12/11
|
Skinning, quaternion, CSG, implicit surfaces, marching cube algorithm
Recommended reading:
Additional readings:
Optional reading:
|
Fri 12/11 LAB
|
Lab9: Subdivision Surfaces
|
Sat 12/12 12 noon
|
PA4 Due
|
|
|
Mon 12/14
|
Introduction to procedural
modeling and physically-based and behavioral animations (9 MB)
Recommended reading:
- TP3 Sections 3.9, 17.5, 17.6.
Demo:
Additional readings:
- Reeves, "Particle
Systems--A Technique for Modeling a Class of Fuzzy Objects," ACM Transaction on Graphics, 2(2):91-108, 1983.
- Reynolds, "Flocks,
Herds, and Schools: A Distributed Behavioral Model," Computer Graphics, 21(4):25-34, 1987.
- Kanyuk, "Brain
Springs: Fast Physics for Large Crowds in WALL*E," IEEE Computer Graphics and Applications, 29(4):19-25,
July/August 2009 (video clips accompanying paper).
Optional readings:
- Reeves, "Approximate
and probabilistic algorithms for shading and rendering structured particle systems," Computer Graphics, 19(3):313-322, 1985.
- Witkin and Baraff, "Differential Equation Basics," SIGGRAPH '97 Course Notes, 1997.
- Roble and Zafar, "Don't
Trust Your Eyes: Cutting-Edge Visual Effects," IEEE Computer, 42(7):35-41, July 2009 (video clips accompanying the paper).
- Witkin, "Particle System Dynamics,"
SIGGRAPH '97 Course Notes, 1997.
- Stam, "Real-Time
Fluid Dynamics for Games," Proc. of GDC '03.
|
Mon 12/14, 6-8 pm
|
Final Exam Review in 2150 DOW
|
|
|
Mon 12/21
|
Final Exam 10:30-12:30 in 2150 DOW
|
|