EECS 351 - Introduction to Computer Graphics
CATALOG DESCRIPTION: First in a 3-course series to teach fundamental ideas underlying all forms of computer-assisted picture-making. Teaches you to write simple programs that make collections of interactive 2D/3D shapes with simple lighting and textured surfaces. You will learn by doing, with four projects that teach: 1) Shape descriptions; points, lines, polys, and trees of transformations; 2) Viewing: how to make a 3D camera that computes a picture 3) lighting and shading; 4) textures and buffer tricks. We will use 'WebGL' to write 3D graphics programs that run in HTML-5 browsers such as Chrome. We will learn GLSL to write shaders in OpenGL (DirectX is similar), with brief surveys of advanced topics.
- This course satisfies the project requirement.
REQUIRED TEXTBOOKS (2) :
"WebGL Programming Guide: Interactive 3D Graphics Programming with WebGL (OpenGL)" By Kouichi Matsuda and Rodger Lea. (First edition) Addison-Wesley, © 2013 Pearson Education, Inc. (Paperback or Kindle E-book – either is OK)
"OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition)" !CAREFUL! EARLIER EDITIONS UNACCEPTABLE! By Dave Shreiner, Graham Sellers, John M. Kessenich, Bill M. Licea-Kane. Addison-Wesley, © 2013 Pearson Education, Inc. (Paperback or Kindle E-Book – either is OK)
OPTIONAL, RECOMMENDED TEXTBOOKS:
"Mathematics for 3D Game Programming and Computer Graphics" (3rd Edition) !CAREFUL! EARLIER EDITIONS UNACCEPTABLE! By Eric Lengyel Cengage Learning, ©2012 Course Technology (Paperback or Kindle E-Book – either is OK) (Also used in "Intermediate Graphics" course)
"Real-Time Rendering" (survey of techniques; little/no implementation help) by Tomas Akenine-Möller, Eric Haines, and Naty Hoffman. 1045 pages, from A.K. Peters Ltd., ISBN 978-1-56881-424-7, 2008 (Hardback or Kindle E-book - either is OK)
"OpenGL SuperBible" (6th Edition) by Graham Seller, Richard S. Wright, Jr., and Nicholas Haemel Addison-Wesley (c) 2014 Pearson Education, Inc. (Paperback or Kindle E-Book - either is OK)
COURSE GOALS: Comfort and ease in programming any desired interactive 2D or 3D shapes using OpenGL.
PREREQUISITES: EECS 214 or permission from instructor
DETAILED COURSE TOPICS: OpenGL/WebGL basics, Buffers and Pass-thru shaders; 2D/3D vector transforms, shape description, traversing the tree of transformations, Viewing and camera matrices, lighting, shading and texture, smoothing: antialiasing, buffer-to-buffer rendering.
HOMEWORK ASSIGNMENTS: In-class exercises; recommended problems from book.
GRADES: projects with in-class demo and report; 4 quizzes+class participation; No Midterm or Final Exam.