Welcome to CS 4/57101 Computer Graphics Goal: The goal of this course is to provide an introduction to the theory and practice of computer graphics. The course will assume a good background in programming in C++ and a background in mathematics including familiarity with the theory and use of coordinate geometry and of linear algebra such as matrix multiplication. 1/18/2000 Lecture 1 1
Components of Course There will be three components to the course You will gain an understanding of the fundamentals of computer graphics through study of the the techniques, algorithms and hardware used in computer graphics. You will gain experience in the techniques involved in low level computer graphics programming such as that used to create computer graphics packages (such as OpenGL). You will use the industry standard based OpenGL library in several programming projects illustrating the theory and practice of programming computer graphics applications. CS 4/57101 Lecture 1 2
Syllabus Topics covered will include: Introduction, Motivation, Uses, History Graphics hardware Use of a local designed Simple Graphics Package as a basis for low level programming Use to implement basic 2D Algorithms, Scan conversion, filling, line and pen style, clipping, antialiasing Getting started with OpenGL Input and Interaction in OpenGL Geometrical Transformations in 2D and 3D, homogeneous coordinates, matrix representation, windows and viewports CS 4/57101 Lecture 1 3
Syllabus (ctd.) Viewing in 3D, projections Light, achromatic and chromatic, color models and possibly one or more from the following: Visual Realism, rendering techniques for lines and shaded images, dynamics, stereopsis Visible Surface determination, hidden line algorithms, z-buffer Illumination and Shading, light sources, (surface detail, ray tracing, radiosity) Modeling Techniques, curve and surface representation Animation CS 4/57101 Lecture 1 4
Text and References Text: Edward Angel, Interactive Computer Graphics: A Top-Down Approach with OpenGL, Addison-Wesley, 1997, ISBN 0-2-85571-2, $55.50 Alternative Texts: James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes, Computer Graphics : Principles & Practices, Addison Wesley Longman, 2nd edition in C, 1994, 1296 Pages, ISBN 0201848406, $69.95/$74.75 Jackie Neider, Tom Davis, Opengl Architecture Review board, OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 1.2, Addison Wesley Longman, 1999, 730pp, ISBN 0201604582, $38.89 http://www.bookpool.com/. Additional References: Donald Hearn, M. Pauline Baker, Computer Graphics, 2nd edition, C version, Prentice Hall, 1996, 652 pages, ISBN 0135309247, $57.50 http://www.bookpool.com/ CS 4/57101 Lecture 1 5
Assesment: Midterm Examination : 30% Final Examination : 30% Assignments (2 to 6) : 40% Notes: Assignments will primarily be programming assignments requiring implementation of applications employing the theory covered in the lectures and books. There will however be some threoretical homeworks and questions as well. Students are reminded that completion of both theory and programming parts of the homework are necessary to achieve a good grade. CS 4/57101 Lecture 1 6
Assesment: Notes (ctd.) There will be a penalty for late assignments which may amount to 10% per day. The Midterm examination will be between the 7th, and 10th week Assignments are to be completed by the student without assistance from or collaboration with other persons. The final examination is scheduled for Tuesday May 7 from 5:45pm to 8:00pm. It may be comprehensive or at least require some knowledge of the material examined in the mid-term. CS 4/57101 Lecture 1 7
Additional Requirements Before the end of the first week of classes each student should fill out the form at URL http://www.cs.kent.edu/~farrell/cg02/form.html This syllabus and all subsequent information on the course will be available using the WWW. The home page for the course is: http://www.cs.kent.edu/~farrell/cg02/index.html All programs should conform to the submission standards given in URL http://www.cs.kent.edu/~farrell/cg02/submission.html CS 4/57101 Lecture 1 8
Directions in Computer Graphics Plotting Interactivity Real-Time Manipulation Image-Realism (Photorealistic rendering) Real-Time Rendering Scientific Visualization CS 4/57101 Lecture 1 9
Computer Graphics - Systems Programming? Characteristics: dynamic environment time sensitive interactive environment creator user timing issues simulation environment visualization environment CS 4/57101 Lecture 1 10
Components of Computer Graphics Modeling: Defining objects in terms of primitives, coordinates and characteristics Storing: storing scenes and images in memory and on disk Manipulating: changing the shape, position and characteristics of objects CS 4/57101 Lecture 1 11
Components of Computer Graphics Rendering: applying physically based procedurs to generate (photorealistic) images from scenes (using lighting and shading) Viewing: displaying images from various viewpoints on various devices CS 4/57101 Lecture 1 12