Your textbook…
Table of Contents
Chapter 1 Graphics Systems and Models
1.1 Applications of Computer Graphics
1.2 A Graphics System
1.3 Images: Physical and Synthetic
1.4 Imaging Systems
1.5 The Synthetic-Camera Model
1.6 The Programmer’s Interface
1.7 Graphics Architectures
1.8 Programmable Pipelines
1.9 Performance Characteristics
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 2 Graphics Programming
2.1 The Sierpinski Gasket
2.2 Programming Two-Dimensional Applications
2.3 The OpenGL API
2.4 Primitives and Attributes
2.5 Color
2.6 Viewing
2.7 Control Functions
2.8 The Gasket Program
2.9 Polygons and Recursion
2.10 The Three-Dimensional Gasket
2.11 Plotting Implicit Functions
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 3 Input and Interaction
3.1 Interaction
3.2 Input Devices
3.3 Clients and Servers
3.4 Display Lists
3.5 Programming Event-Driven Input
3.6 Menus
3.7 Picking
3.8 A Simple Paint Program
3.9 Building Interactive Models
3.10 Animating Interactive Programs
3.11 Design of Interactive Programs
3.12 Logic Operations
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 4 Geometric Objects and Transformations
4.1 Scalars, Points, and Vectors
4.2 Three-Dimensional Primitives
4.3 Coordinate Systems and Frames
4.4 Frames in OpenGL
4.5 Modeling a Colored Cube
4.6 Affine Transformations
4.7 Translation, Rotation, and Scaling
4.8 Transformations in Homogeneous Coordinates
4.9 Concatenation of Transformations
4.10 OpenGL Transformation Matrices
4.11 Interfaces to Three-Dimensional Applications
4.12 Quaternions
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 5 Viewing
5.1 Classical and Computer Viewing
5.2 Viewing with a Computer
5.3 Positioning of the Camera
5.4 Simple Projections
5.5 Projections in OpenGL
5.6 Hidden-Surface Removal
5.7 Interactive Mesh Displays
5.8 Parallel-Projection Matrices
5.9 Perspective-Projection Matrices
5.10 Projections and Shadows
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 6 Shading
6.1 Light and Matter
6.2 Light Sources
6.3 The Phong Reflection Model
6.4 Computation of Vectors
6.5 Polygonal Shading
6.6 Approximation of a Sphere by Recursive Subdivision
6.7 Light Sources in OpenGL
6.8 Specification of Materials in OpenGL
6.9 Shading of the Sphere Model
6.10 Global Illumination
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 7 From Vertices to Fragments
7.1 Basic Implementation Strategies
7.2 Four Major Tasks
7.3 Clipping
7.4 Line-Segment Clipping
7.5 Polygon Clipping
7.6 Clipping of Other Primitives
7.7 Clipping in Three Dimensions
7.8 Rasterization
7.9 Bresenham’s Algorithm
7.10 Polygon Rasterization
7.11 Hidden-Surface Removal
7.12 Antialiasing
7.13 Display Considerations
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 8 Discrete Techniques
8.1 Buffers
8.2 Digital Images
8.3 Writing into Buffers
8.4 Bit and Pixel Operations in OpenGL
8.5 Examples
8.6 Mapping Methods
8.7 Texture Mapping
8.8 Texture Mapping in OpenGL
8.9 Texture Generation
8.10 Environment Maps
8.11 Compositing Techniques
8.12 Multirendering and the Accumulation Buffer
8.13 Sampling and Aliasing
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 9 Programmable Shaders
9.1 Programmable Pipelines
9.2 Shading Languages
9.3 Extending OpenGL
9.4 The OpenGL Shading Language
9.5 The OpenGL Shading Language
9.6 Linking Shaders with OpenGL Programs
9.7 Moving Vertices
9.8 Lighting with Shaders
9.9 Fragment Shaders
9.10 Per-Vertex Versus Per-Fragment Phong Shading
9.11 Samplers
9.12 Cube Maps
9.13 Bump Mapping
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 10 Modeling and Procedural Methods
Chapter 11 Scene Graphs and Real Time
Chapter 12 Curves and Surfaces
11.1 Representation of Curves and Surfaces
11.2 Design Criteria
11.3 Parametric Cubic Polynomial Curves
11.4 Interpolation
11.5 Hermite Curves and Surfaces
11.6 B´ezier Curves and Surfaces
11.7 Cubic B-Splines
11.8 General B-Splines
11.9 Rendering of Curves and Surfaces
11.10 The Utah Teapot
11.11 Algebraic Surfaces
11.12 Curves and Surfaces in OpenGL 615
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 13 Advanced Rendering
12.1 Going Beyond Pipeline Rendering
12.2 Ray Tracing
12.3 Building a Simple Ray Tracer
12.4 The Rendering Equation
12.5 Radiosity
12.6 RenderMan
12.7 Large-Scale Rendering
12.8 Image-Based Rendering
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Appendix A Sample Programs
A.1 Sierpinski Gasket Program
A.2 Recursive Generation of Sierpinski Gasket
A.3 Recursive Three-Dimensional Sierpinski Gasket
A.4 Marching Squares
A.5 Square Drawing Program
A.6 Paint Program
A.7 Double-Buffering Example
A.8 Selection-Mode Picking Program
A.9 Rotating-Cube Program
A.10 Rotating Cube Using Vertex Arrays
A.11 Rotating Cube with a Virtual Trackball
A.12 Moving Viewer
A.13 Sphere Program
A.14 Mandelbrot Set Program
A.15 Bresenham’s Algorithm
A.16 Rotating Cube with Texture
A.17 GLSL Example
A.18 Scene-Graph Example
A.19 Program for Drawing B´ezier Curves
Appendix B Spaces
B.1 Scalars
B.2 Vector Spaces
B.3 Affine Spaces
B.4 Euclidean Spaces
B.5 Projections
B.6 Gram-Schmidt Orthogonalization
SUGGESTED READINGS
EXERCISES
Appendix C Matrices
C.1 Definitions
C.2 Matrix Operations
C.3 Row and Column Matrices
C.4 Rank
C.5 Change of Representation
C.6 The Cross Product
C.7 Eigenvalues and Eigenvectors
SUGGESTED READINGS
EXERCISES
Appendix D Synopsis of OpenGL Functions
D.1 Specifying Simple Geometry
D.2 Attributes
D.3 Working with the Window System
D.4 Interaction
D.5 Enabling Features
D.6 Transformations
D.7 Viewing
D.8 Defining Discrete Primitives
D.9 Display Lists
D.10 Picking
D.11 Lighting
D.12 Texture Mapping
D.13 State and Buffer Manipulation
D.14 Vertex Arrays
D.15 Blending Functions
D.16 Query Functions
D.17 Curve and Surface Functions
D.18 GLU Quadrics
D.19 GLSL Functions
References
Function Index
Subject Index
1.1 Applications of Computer Graphics
1.2 A Graphics System
1.3 Images: Physical and Synthetic
1.4 Imaging Systems
1.5 The Synthetic-Camera Model
1.6 The Programmer’s Interface
1.7 Graphics Architectures
1.8 Programmable Pipelines
1.9 Performance Characteristics
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 2 Graphics Programming
2.1 The Sierpinski Gasket
2.2 Programming Two-Dimensional Applications
2.3 The OpenGL API
2.4 Primitives and Attributes
2.5 Color
2.6 Viewing
2.7 Control Functions
2.8 The Gasket Program
2.9 Polygons and Recursion
2.10 The Three-Dimensional Gasket
2.11 Plotting Implicit Functions
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 3 Input and Interaction
3.1 Interaction
3.2 Input Devices
3.3 Clients and Servers
3.4 Display Lists
3.5 Programming Event-Driven Input
3.6 Menus
3.7 Picking
3.8 A Simple Paint Program
3.9 Building Interactive Models
3.10 Animating Interactive Programs
3.11 Design of Interactive Programs
3.12 Logic Operations
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 4 Geometric Objects and Transformations
4.1 Scalars, Points, and Vectors
4.2 Three-Dimensional Primitives
4.3 Coordinate Systems and Frames
4.4 Frames in OpenGL
4.5 Modeling a Colored Cube
4.6 Affine Transformations
4.7 Translation, Rotation, and Scaling
4.8 Transformations in Homogeneous Coordinates
4.9 Concatenation of Transformations
4.10 OpenGL Transformation Matrices
4.11 Interfaces to Three-Dimensional Applications
4.12 Quaternions
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 5 Viewing
5.1 Classical and Computer Viewing
5.2 Viewing with a Computer
5.3 Positioning of the Camera
5.4 Simple Projections
5.5 Projections in OpenGL
5.6 Hidden-Surface Removal
5.7 Interactive Mesh Displays
5.8 Parallel-Projection Matrices
5.9 Perspective-Projection Matrices
5.10 Projections and Shadows
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 6 Shading
6.1 Light and Matter
6.2 Light Sources
6.3 The Phong Reflection Model
6.4 Computation of Vectors
6.5 Polygonal Shading
6.6 Approximation of a Sphere by Recursive Subdivision
6.7 Light Sources in OpenGL
6.8 Specification of Materials in OpenGL
6.9 Shading of the Sphere Model
6.10 Global Illumination
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 7 From Vertices to Fragments
7.1 Basic Implementation Strategies
7.2 Four Major Tasks
7.3 Clipping
7.4 Line-Segment Clipping
7.5 Polygon Clipping
7.6 Clipping of Other Primitives
7.7 Clipping in Three Dimensions
7.8 Rasterization
7.9 Bresenham’s Algorithm
7.10 Polygon Rasterization
7.11 Hidden-Surface Removal
7.12 Antialiasing
7.13 Display Considerations
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 8 Discrete Techniques
8.1 Buffers
8.2 Digital Images
8.3 Writing into Buffers
8.4 Bit and Pixel Operations in OpenGL
8.5 Examples
8.6 Mapping Methods
8.7 Texture Mapping
8.8 Texture Mapping in OpenGL
8.9 Texture Generation
8.10 Environment Maps
8.11 Compositing Techniques
8.12 Multirendering and the Accumulation Buffer
8.13 Sampling and Aliasing
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 9 Programmable Shaders
9.1 Programmable Pipelines
9.2 Shading Languages
9.3 Extending OpenGL
9.4 The OpenGL Shading Language
9.5 The OpenGL Shading Language
9.6 Linking Shaders with OpenGL Programs
9.7 Moving Vertices
9.8 Lighting with Shaders
9.9 Fragment Shaders
9.10 Per-Vertex Versus Per-Fragment Phong Shading
9.11 Samplers
9.12 Cube Maps
9.13 Bump Mapping
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 10 Modeling and Procedural Methods
Chapter 11 Scene Graphs and Real Time
Chapter 12 Curves and Surfaces
11.1 Representation of Curves and Surfaces
11.2 Design Criteria
11.3 Parametric Cubic Polynomial Curves
11.4 Interpolation
11.5 Hermite Curves and Surfaces
11.6 B´ezier Curves and Surfaces
11.7 Cubic B-Splines
11.8 General B-Splines
11.9 Rendering of Curves and Surfaces
11.10 The Utah Teapot
11.11 Algebraic Surfaces
11.12 Curves and Surfaces in OpenGL 615
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Chapter 13 Advanced Rendering
12.1 Going Beyond Pipeline Rendering
12.2 Ray Tracing
12.3 Building a Simple Ray Tracer
12.4 The Rendering Equation
12.5 Radiosity
12.6 RenderMan
12.7 Large-Scale Rendering
12.8 Image-Based Rendering
SUMMARY AND NOTES
SUGGESTED READINGS
EXERCISES
Appendix A Sample Programs
A.1 Sierpinski Gasket Program
A.2 Recursive Generation of Sierpinski Gasket
A.3 Recursive Three-Dimensional Sierpinski Gasket
A.4 Marching Squares
A.5 Square Drawing Program
A.6 Paint Program
A.7 Double-Buffering Example
A.8 Selection-Mode Picking Program
A.9 Rotating-Cube Program
A.10 Rotating Cube Using Vertex Arrays
A.11 Rotating Cube with a Virtual Trackball
A.12 Moving Viewer
A.13 Sphere Program
A.14 Mandelbrot Set Program
A.15 Bresenham’s Algorithm
A.16 Rotating Cube with Texture
A.17 GLSL Example
A.18 Scene-Graph Example
A.19 Program for Drawing B´ezier Curves
Appendix B Spaces
B.1 Scalars
B.2 Vector Spaces
B.3 Affine Spaces
B.4 Euclidean Spaces
B.5 Projections
B.6 Gram-Schmidt Orthogonalization
SUGGESTED READINGS
EXERCISES
Appendix C Matrices
C.1 Definitions
C.2 Matrix Operations
C.3 Row and Column Matrices
C.4 Rank
C.5 Change of Representation
C.6 The Cross Product
C.7 Eigenvalues and Eigenvectors
SUGGESTED READINGS
EXERCISES
Appendix D Synopsis of OpenGL Functions
D.1 Specifying Simple Geometry
D.2 Attributes
D.3 Working with the Window System
D.4 Interaction
D.5 Enabling Features
D.6 Transformations
D.7 Viewing
D.8 Defining Discrete Primitives
D.9 Display Lists
D.10 Picking
D.11 Lighting
D.12 Texture Mapping
D.13 State and Buffer Manipulation
D.14 Vertex Arrays
D.15 Blending Functions
D.16 Query Functions
D.17 Curve and Surface Functions
D.18 GLU Quadrics
D.19 GLSL Functions
References
Function Index
Subject Index
This textbook is also sold in the various packages listed below. Before purchasing one of these packages, speak with your professor about which one will help you be successful in your course.
Package ISBN-13: 9780137019175
$136.40 | Add to Cart
This package contains:
- Interactive Computer Graphics: A Top-Down Approach Using OpenGL, 5th Edition
Edward Angel | ©2009 | Cloth; 864 pages - OpenGL: A Primer, 3rd Edition
Edward Angel | ©2008 | Paper; 304 pages
Package ISBN-13: 9780138139797
$142.80 | Add to Cart
This package contains:
- Interactive Computer Graphics: A Top-Down Approach Using OpenGL, 5th Edition
Edward Angel | ©2009 | Cloth; 864 pages - OpenGL® Distilled
Paul Martz | ©2006 | Paper; 304 pages
Package ISBN-13: 9780135040300
$161.53 | Add to Cart
This package contains:
- Interactive Computer Graphics: A Top-Down Approach Using OpenGL, 5th Edition
Edward Angel | ©2009 | Cloth; 864 pages - OpenGL® Programming Guide: The Official Guide to Learning OpenGL®, Version 2.1, 6th Edition
OpenGL Architecture Review Board, Dave Shreiner, Mason Woo, Jackie Neider, Tom Davis | ©2008 | Paper; 928 pages
Online Book
Interactive Computer Graphics: A Top-Down Approach Using OpenGL, CourseSmart eTextbook, 5th Edition
Your Price: $64.50
Buy from CourseSmart50% off retail price of the print version.