
Because Knetbooks knows college students. Our rental program is designed to save you time and money. Whether you need a textbook for a semester, quarter or even a summer session, we have an option for you. Simply select a rental period, enter your information and your book will be on its way!
| Introduction | p. 1 |
| Nuts and Bolts--an Introduction to the OpenGL API | |
| 3D Graphics Fundamentals | p. 9 |
| What's This All About? | p. 9 |
| A Brief History of Computer Graphics | p. 9 |
| A Survey of 3D Effects | p. 13 |
| Common Uses for 3D Graphics | p. 17 |
| Basic 3D Programming Principles | p. 21 |
| Summary | p. 28 |
| What is OpenGL? | p.... MORE |
| Evolution of a Standard | p. 30 |
| How Does OpenGL Work? | p. 32 |
| Summary | p. 35 |
| Using OpenGL | p. 37 |
| What you'll learn in this chapter | p. 37 |
| OpenGL: An API, Not a Language | p. 37 |
| API Specifics | p. 40 |
| Platform Independence | p. 43 |
| Your First Program | p. 45 |
| Drawing Shapes with OpenGL | p. 51 |
| Animation with OpenGL and GLUT | p. 58 |
| Finally Some 3D! | p. 63 |
| Summary | p. 64 |
| Reference Section | p. 65 |
| Drawing in Space: Lines, Points, and Polygons | p. 79 |
| What you'll learn in this chapter | p. 79 |
| Drawing Points in 3D | p. 80 |
| Setting Up a 3D Canvas | p. 80 |
| A 3D Point: the Vertex | p. 82 |
| Draw Something! | p. 83 |
| Setting the Point Size | p. 87 |
| Drawing Lines in 3D | p. 90 |
| Drawing Triangles in 3D | p. 98 |
| Building Solid Objects | p. 102 |
| Other Primitives | p. 111 |
| Summary | p. 120 |
| Reference Section | p. 120 |
| Moving Around in Space: Coordinate Transformations | p. 135 |
| What you'll learn in this chapter | p. 135 |
| Is This the Dreaded Math Chapter? | p. 136 |
| Understanding Transformations | p. 136 |
| Matrix Munching | p. 142 |
| Using Projections | p. 154 |
| Advanced Matrix Manipulation | p. 161 |
| Summary | p. 163 |
| Reference Section | p. 163 |
| Color, Lighting, and Materials | p. 173 |
| What you'll learn in this chapter | p. 173 |
| What Is Color? | p. 174 |
| PC Color Hardware | p. 177 |
| PC Display Modes | p. 178 |
| Using Color in OpenGL | p. 180 |
| Color in the Real World | p. 186 |
| Materials in the Real World | p. 188 |
| Adding Light to a Scene | p. 191 |
| Using a Light Source | p. 195 |
| Lighting Effects | p. 206 |
| Putting It All Together | p. 211 |
| Shadows | p. 219 |
| Summary | p. 225 |
| Reference Section | p. 225 |
| Meat and Potatoes--the Staples of Opengl Rendering | |
| Raster Graphics in Opengl | p. 241 |
| What you'll learn in this chapter | p. 241 |
| Drawing Bitmaps | p. 242 |
| Bitmap Fonts | p. 245 |
| Bitmaps with Color--Pixmaps | p. 250 |
| A Windows .BMP File Viewer | p. 252 |
| Drawing Images with Transparency | p. 256 |
| Drawing Indexed Images | p. 258 |
| Panning an Image | p. 259 |
| Reading Images | p. 259 |
| Copying Images | p. 262 |
| Writing .BMP Files | p. 262 |
| Summary | p. 263 |
| Reference Section | p. 264 |
| Texture Mapping | p. 273 |
| What you'll learn in this chapter | p. 273 |
| The Basics of Texture Mapping | p. 274 |
| Defining Texture Images | p. 275 |
| Putting It All Together--A 1D Texture Example | p. 279 |
| A 2D Texturing Example | p. 281 |
| Using More Than One Texture Image | p. 281 |
| A Terrain Viewing Program | p. 286 |
| Automatically Generating Texture Coordinates | p. 289 |
| Mipmapped Textures | p. 290 |
| Lighting with Textures | p. 294 |
| Replacing Texture Image Data | p. 297 |
| 3D Texturing | p. 298 |
| Summary | p. 299 |
| Reference Section | p. 300 |
| 3d Modeling and Object Composition | p. 309 |
| What you'll learn in this chapter | p. 309 |
| Defining the Task | p. 310 |
| Constructing a Model, One Piece at a Time | p. 313 |
| Preprocessing Your Models | p. 325 |
| Summary | p. 341 |
| Reference Section | p. 341 |
| Visual Effects: Blending and Fog | p. 359 |
| What you'll learn in this chapter | p. 359 |
| Blending | p. 359 |
| Fog | p. 365 |
| Back to the Terrain Viewing Program | p. 367 |
| Summary | p. 368 |
| Reference Section | p. 369 |
| Buffers: Not Just for Animation | p. 371 |
| What you'll learn in this chapter | p. 371 |
| What Are Buffers? | p. 372 |
| Configuring Buffers Using WIN32 Functions | p. 375 |
| Configuring Buffers Using GLUT Functions | p. 378 |
| Picking Only the Buffers You Need | p. 378 |
| The Color Buffer | p. 379 |
| The Depth Buffer | p. 380 |
| The Stencil Buffer | p. 386 |
| The Accumulation Buffer | p. 389 |
| Summary | p. 393 |
| Reference Section | p. 393 |
| Beyond Lines and Triangles | p. 397 |
| What you'll learn in this chapter | p. 397 |
| Quadrics | p. 398 |
| Drawing a Pencil | p. 402 |
| Complex Polygons | p. 404 |
| Combining Quadrics and Polygon Tessellators | p. 411 |
| Tessellating Height Fields (Grids) | p. 415 |
| Improving the Terrain Viewing Program | p. 416 |
| Summary | p. 417 |
| Reference Section | p. 418 |
| Curves and Surfaces: What the #%@!and Are Nurbs? | p. 429 |
| What you'll learn in this chapter | p. 429 |
| Curves and Surfaces | p. 430 |
| Evaluators | p. 432 |
| Nurbs | p. 441 |
| Summary | p. 448 |
| Reference Section | p. 448 |
| Interactive Graphics | p. 471 |
| What you'll learn in this chapter | p. 471 |
| Selection | p. 472 |
| Feedback | p. 483 |
| A Feedback Example | p. 485 |
| Summary | p. 492 |
| Reference Section | p. 492 |
| Imaging With Opengl | p. 503 |
| What you'll learn in this chapter | p. 503 |
| Basics of the OpenGL Imaging Extension | p. 503 |
| The Color Matrix | p. 504 |
| Convolution (Filtering) | p. 508 |
| Histogram Equalization | p. 509 |
| Summary | p. 510 |
| Reference Section | p. 510 |
| Common Opengl Extensions | p. 515 |
| What you'll learn in this chapter | p. 515 |
| What Extensions Are Available? | p. 515 |
| When Should I Use an Extension? | p. 516 |
| Checking for Extension Availability | p. 516 |
| The Swap Hint Extension | p. 518 |
| The Vertex Culling Extension | p. 520 |
| The Multi-Texture Extension | p. 523 |
| Summary | p. 525 |
| Reference Section | p. 525 |
| Opengl for Windows: Opengl + Win32 = Wiggle | |
| The Opengl Pixel Format and Rendering Context | p. 531 |
| What you'll learn in this chapter | p. 531 |
| OpenGL Implementations on Windows | p. 532 |
| Basic Windows Rendering | p. 534 |
| Putting It All Together | p. 545 |
| Windows Palettes | p. 555 |
| OpenGL and Windows Fonts | p. 565 |
| Full-Screen Rendering | p. 568 |
| Multithreaded Rendering | p. 572 |
| Summary | p. 573 |
| Reference Section | p. 574 |
| Non-Windowed Rendering | p. 595 |
| The Basics of Offscreen Rendering | p. 595 |
| Saving to a BMP File | p. 598 |
| Printing Images | p. 601 |
| Metafiles | p. 602 |
| Summary | p. 604 |
| Real-Time Programming with Opengl | p. 605 |
| What you'll learn in this chapter | p. 605 |
| How Fast Is Fast? | p. 606 |
| Windows Animation Techniques | p. 608 |
| Putting the "Real" in Real-Time | p. 625 |
| Scene Graph Basics | p. 635 |
| Other Real-Time Techniques | p. 642 |
| Summary | p. 643 |
| Appendixes | |
| Summary of Opengl Updates | p. 647 |
| December 1995 | p. 647 |
| March 1998 | p. 648 |
| Further Reading | p. 649 |
| Windows Programming Books | p. 649 |
| OpenGL Books | p. 649 |
| 3D Graphics Books | p. 649 |
| The Web | p. 650 |
| The Opengl State Machine | p. 651 |
| Basic OpenGL State Functions | p. 651 |
| Saving and Restoring States | p. 652 |
| Reference Section | p. 657 |
| Glossary | p. 661 |
| Index | p. 665 |
| Table of Contents provided by Syndetics. All Rights Reserved. |