Course catalog description: Computer display systems, algorithms, and languages for interactive computer graphics. Vector, curve, and surface generation. Hidden line and surface algorithms.
Credits and contact hours: 3 credits; 1 hour and 20-minute session twice a week, every week
Pre-Requisite courses: 14:332:252
Co-Requisite courses: None
Topics Covered:
- Introduction, what is computer graphics? Review of computer graphics hardware and graphics, processing units (GPU). Curves, surfaces and polygonal mesh representations.
- 2D graphics, scan conversion, anti-aliasing, clipping, polygonal fill algorithms.
- Curves, polynomial curves, Bezier curves, spline fitting.
- 3D Polygonal objects, coordinate frame transformations, rotations, translations, scaling, homogenous transformations.
- Camera models, perspective viewing, window-viewport transformations.
- 3D Rendering pipeline, OpenGL implementation of rendering pipeline, clipping against a 3D window in both parallel and perspective projection.
- Midterm Examination, Curve and surface design. Bezier and B-spline bicubic surfaces.
- Illumination and reflectance: shading models, light source models.
- Texture mapping, texture synthesis. Advanced reflectance models, bidirectional reflectance distribution function.
- Color theory, RGB color model, basic concepts; Additive and subtractive colors. Color interpolation.
- Hidden-surface and hidden-line line algorithms, Front & back surfaces, order of visibility, hidden-line determination
- Hidden-surface determination, Z-buffer, Ray tracing, High realism displays
- Transparency, shadows, radiosity.
- Introduction to image-based rendering.
Textbook: Hill, Francis and Kelley, Stephen, Computer Graphics Using OpenGL; Shreiner, et al, OpenGL Programming Guide: The Official Guide to Learning OpenGL, Addison-Wesley.
Other supplemental material: class notes.