| |
| |
| |
Graphics Systems and Models | |
| |
| |
| |
Applications of Computer Graphics | |
| |
| |
| |
A Graphics System | |
| |
| |
| |
Images: Physical and Synthetic | |
| |
| |
| |
Imaging Systems | |
| |
| |
| |
The Synthetic-Camera Model | |
| |
| |
| |
The Programmers Interface | |
| |
| |
| |
Graphics Architectures | |
| |
| |
| |
Programmable Pipelines | |
| |
| |
| |
Performance Characteristics | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Graphics Programming | |
| |
| |
| |
The Sierpinski Gasket | |
| |
| |
| |
Programming Two-Dimensional Applications | |
| |
| |
| |
The OpenGL API | |
| |
| |
| |
Primitives and Attributes | |
| |
| |
| |
Color | |
| |
| |
| |
Viewing | |
| |
| |
| |
Control Functions | |
| |
| |
| |
The Gasket Program | |
| |
| |
| |
Polygons and Recursion | |
| |
| |
| |
The Three-Dimensional Gasket | |
| |
| |
| |
Plotting Implicit Functions | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Input and Interaction | |
| |
| |
| |
Interaction | |
| |
| |
| |
Input Devices | |
| |
| |
| |
Clients and Servers | |
| |
| |
| |
Display Lists | |
| |
| |
| |
Programming Event-Driven Input | |
| |
| |
| |
Menus | |
| |
| |
| |
Picking | |
| |
| |
| |
A Simple Paint Program | |
| |
| |
| |
Building Interactive Models | |
| |
| |
| |
Animating Interactive Programs | |
| |
| |
| |
Design of Interactive Programs | |
| |
| |
| |
Logic Operations | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Geometric Objects and Transformations | |
| |
| |
| |
Scalars, Points, and Vectors | |
| |
| |
| |
Three-Dimensional Primitives | |
| |
| |
| |
Coordinate Systems and Frames | |
| |
| |
| |
Frames in OpenGL | |
| |
| |
| |
Modeling a Colored Cube | |
| |
| |
| |
Affine Transformations | |
| |
| |
| |
Translation, Rotation, and Scaling | |
| |
| |
| |
Transformations in Homogeneous Coordinates | |
| |
| |
| |
Concatenation of Transformations | |
| |
| |
| |
OpenGL Transformation Matrices | |
| |
| |
| |
Interfaces to Three-Dimensional Applications | |
| |
| |
| |
Quaternions | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Viewing | |
| |
| |
| |
Classical and Computer Viewing | |
| |
| |
| |
Viewing with a Computer | |
| |
| |
| |
Positioning of the Camera | |
| |
| |
| |
Simple Projections | |
| |
| |
| |
Projections in OpenGL | |
| |
| |
| |
Hidden-Surface Removal | |
| |
| |
| |
Interactive Mesh Displays | |
| |
| |
| |
Parallel-Projection Matrices | |
| |
| |
| |
Perspective-Projection Matrices | |
| |
| |
| |
Projections and Shadows | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Shading | |
| |
| |
| |
Light and Matter | |
| |
| |
| |
Light Sources | |
| |
| |
| |
The Phong Reflection Model | |
| |
| |
| |
Computation of Vectors | |
| |
| |
| |
Polygonal Shading | |
| |
| |
| |
Approximation of a Sphere by Recursive Subdivision | |
| |
| |
| |
Light Sources in OpenGL | |
| |
| |
| |
Specification of Materials in OpenGL | |
| |
| |
| |
Shading of the Sphere Model | |
| |
| |
| |
Global Illumination | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
From Vertices to Fragments | |
| |
| |
| |
Basic Implementation Strategies | |
| |
| |
| |
Four Major Tasks | |
| |
| |
| |
Clipping | |
| |
| |
| |
Line-Segment Clipping | |
| |
| |
| |
Polygon Clipping | |
| |
| |
| |
Clipping of Other Primitives | |
| |
| |
| |
Clipping in Three Dimensions | |
| |
| |
| |
Rasterization | |
| |
| |
| |
Bresenhams Algorithm | |
| |
| |
| |
Polygon Rasterization | |
| |
| |
| |
Hidden-Surface Removal | |
| |
| |
| |
Antialiasing | |
| |
| |
| |
Display Considerations | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Discrete Techniques | |
| |
| |
| |
Buffers | |
| |
| |
| |
Digital Images | |
| |
| |
| |
Writing into Buffers | |
| |
| |
| |
Bit and Pixel Operations in OpenGL | |
| |
| |
| |
Examples | |
| |
| |
| |
Mapping Methods | |
| |
| |
| |
Texture Mapping | |
| |
| |
| |
Texture Mapping in OpenGL | |
| |
| |
| |
Texture Generation | |
| |
| |
| |
Environment Maps | |
| |
| |
| |
Compositing Techniques | |
| |
| |
| |
Multirendering and the Accumulation Buffer | |
| |
| |
| |
Sampling and Aliasing | |
| |
| |
Summary And Notes Suggested Readings Exercises | |
| |
| |
| |
Programmable Shaders | |
| |
| |
| |
Programmable Pipelines | |
| |
| |
| |
Shading Languages | |
| |
| |
| |
Extending OpenGL | |
| |
| |
| |
The OpenGL Shading Language | |
| |
| |
| |
The OpenGL Shading Language | |
| |
| |
| |
Linking Shaders with OpenGL Programs | |
| |
| |
| |
Moving Vertices | |
| |
| |
| |
Lighting with Shaders | |
| |
| |
| |
Fragment Shaders | |
| |
| |
| |
Per-Vertex Versus Per-Fragment Phong Shading | |
| |
| |
| |
Samplers | |
| |
| |
| |
Cube Maps | |
| |
| |
| |
Bump Mapping | |
| |
| |
Summary An | |