Designed for undergraduate Computer Graphics courses. Highly practical - and exceptionally accessible - this text combines the principles and major techniques in computer graphics with state-of-the-art examples that relate to things students see everyday on the Internet and in computer-generated movies. Thorough and integrated in approach, it carefully presents each concept, explains the underlying mathematics and why it is important, shows how to translate the math into program code, and shows the result. Features and Benefits NEW - Uses OpenGL as the supporting software - An appendix explains how to obtain it (free downloads) and how to install it on a wide variety of platforms. - Enables students using a variety of machines to produce dazzling graphics; it gives students an immediate sense of success by allowing them to make intricate 2D drawings right in Chapter 2. NEW - Uses C++ as the underlying programming language - Introduces useful classes for graphics, but does not force a rigid object-oriented posture.- Suggests how students who wish to stay with C can use alternative structures. NEW - Earlier and more in-depth treatment of 3D graphics and the underlying mathematics. - Allows students to produce realistic 3D graphics much earlier in a course. Students can write programs to "fly" a camera through a 3D scene. NEW - Updates all content to reflect the advances in the field. NEW - Extensive case studies at the end of each chapter. NEW - A clearer flow of ideas from first principles to the techniques of graphics - develops the underlying mathematics from first principles. - Shows students where the math comes from, why it is used, and how it is applied, allowing them to grasp it much more quickly and apply it to their graphics work. NEW - A powerful Scene Design Language (SDL) is introduced and described; C++ code for the SDL interpreter is available on the books web site. - Allows students to create complex 3D scene files with ease, and to read them into their programs. NEW - An Appendix on the PostScript language shows how this powerful page layout language operates. - Allows students to write PostScript, scripts and produce complex pictures on laser printers. Carefully lays out the links between a concept, underlying mathematics, program coding, and the result e.g., the use of vectors in graphics, the underlying theory of transformations, the mathematics of perspective projections, etc. An abundance of state-of-the-art worked examples relates them to things students frequently see on the Internet. Numerous practice exercises (approx. 30 per chapter). Provides students with numerous opportunities to test their knowledge.