The OpenGL Programming Guide: The Official Guide to Learning OpenGL Version 2, August 2005, by OpenGL Architecture Review Board, Dave Shreiner, Mason Woo, Jackie Neider, and Tom Davis. Discusses what OpenGL is, command syntax, OpenGL as a state machine, OpenGL rendering pipeline, OpenGL-related libraries, describing points, lines and polygons, normal vectors, vertex arrays, vertex arrays in buffer objects, viewing and modeling transformations, projection transformations, troubleshooting transformations, manipulating the matrix stacks, clipping panes, reversing or mimicking transformations, color perception, computer color, RGBA vs. color-index mode, specifying a color and a shading model, real-world and OpenGL lighting, creating light sources, selecting a light model, defining material properties, the mathematics of lighting, lighting in color-index mode, blending, antialiasing, fog, polygon offset, display lists, drawing pixels, bitmaps, fonts and images, texture mapping, the framebuffer, tessellators and quadrics, elevators and NURBS, selection and feedback, error handling, extensions to the standard, displaying layers, drawing round points, interpolating images, making decals, shadows, hidden-line removal, drawing depth-buffered images, dirichlet domains, alternate uses for glDrawPixels() and glCopyPixels(), and OpenGL 20 and the OpenGL shading language. Appendices include order of operations, state variables, OpenGL and Windows systems, basics of GLUT: The OpenGL utility kit, calculating normal vectors, homogeneous coordinates and transformation matrices, programming tips, OpenGL invariance, and built-in OpenGL shading language variables and functions.
Beginning OpenGL Game Programming, March 2004, by Dave Astle and Kevin Hawkins. Discusses OpenGL basics, creating a simple OpenGL application, OpenGL states and primitives, transforms and matrices; colors, lighting, blending and fog, bitmaps and images, texture mapping, OpenGL extensions, displaying text, and buffers.
OpenGL® Distilled, February 2006, by Paul Martz. Discusses and introduction to OpenGL, fundamentals and architecture, syntax, state and queries, GLUT, GLU, development environment, history of OpenGL, drawing primitives, vertex sharing, specifying vertex data, drawing primitives using glBegin()/glEnd(), using vertex arrays, clearing the framebuffer, modeling transformations, smooth and flat shading, polygon mode, the depth test, co-planar primitives, performance issues, display lists, face culling, vertex array size, transformation and viewing, matrices, lighting, pixel rectangles, texture mapping, extensions and versions, and platform-specific interfaces. Appendices cover other features such as fog, clip panes, shading language, best practices, performance, and troubleshooting and debugging.
OpenGL® Shading Language, Second Edition, January 2006, by Randi J. Rost. Discusses a review of OpenGL basics, history, evolution, execution mode, frame buffers, state, processing pipeline, primitive assembly and processing, drawing images, pixel unpacking, pixel transfer, read control, texturing, OpenGL shading language, programmable processors, vertex processor, language overview, language definition, data types, scalars, vectors, matrices, structures, declarations and scope, arrays, type conversions, qualifiers, built-in functions, indexing, error handling, OpenGL programmable pipeline, uniform variables, two-sided color mode, point size mode, texturing, built-in functions, OpenGL shading language API, shader development, emulating OpenGL fixed functionality, stored texture shaders, procedural textural shaders, lighting, surface characteristics, noise, animation, antialiasing procedural textures, non-photorealstic shaders, shaders for imaging, realworldz, and language comparison. Appendices cover language grammar, and function references.
OpenGL Game Programming, May 2002, by Kevin Hawkins and Dave Astle. Discusses an introduction to Open GL and DirectX, using Open GL, states and primitives, transformations and matrices, adding colors, blending, lighting, bitmaps and images, texture mapping, display lists, vertex arrays, displaying text, buffers, curves and surfaces, building a game, using Direct (Direct Input and audio), 3-D models, building a game engine, and making a game. Appendix includes a guide to online resources.
Computer Graphics with Open GL, Third Edition, August 2003, by Donald Earn and M. Pauline Baker. Discusses survey of computer graphics, overview of graphics systems, graphics output primitives, attributes of graphics primitives, geometric transformations, two-dimensional viewing, three-dimensional viewing, three-dimensional object representations, visible-surface detection methods, illumination models and surface rendering methods, interactive input methods and graphical user interfaces, color models and color applications, computer animation, and hierarchical modeling.
OpenGL Super Bible, Third Edition, June 2004, by Richard S. Wright and Benjamin Lich. Discusses classic Open GL, using Open GL, geometric primitives and buffers, the pipeline, color, materials, lighting, imaging, texture mapping, interactive graphics; Open GL on Windows, Mac OS X, and Linux, buffer objects, depth texture and shadows, programmable pipeline, low-level shading, high-level shading, vertex shading, and fragment shading.
Advanced Graphics Programming Using Open GL, February 2005, by Tom Mc Reynolds and David Blithe. Discusses polygon representation, decomposition and tessellation, smooth shading, vertex windowing order, triangle stripping, vertex buffer objects, triangle lists, transformations, data representation, overview of the transformation pipeline, normal transformation, texture matrix, texture coordinate generation and transformation, modeling transforms, visualizing transform sequences, vertex programs, representing color, shading, lighting, fixed-point and floating-point arithmetic, digital images, image manipulation, digital filtering, positioning images, pixel store operations, pixel transform operations, ARB image subject, off-screen processing, texture mapping, fraternization and fragment processing, Window system platform integration, implementations, multiple rendering passes, animalizing, com positing, blending, transparency, image processing techniques, basic transform techniques, texture mapping techniques, lighting techniques, CAD and modeling techniques, scene realism, natural detail, illustration and artistic techniques, scientific visualization, ands structuring applications for performance. Appendices cover using Open GL extensions, 3-D vectors, projection matrices, and viewing transforms.
More OpenGL Game Programming, November 2005, Dave Astle. Discusses performance tips and hints, shaders, low-level shaders, OpenGL shading language, advanced texture mapping, advanced lighting and shading, special effects, rendering nature, rendering skies, terrain, 3-D models and skeletal animation, and scene management. Appendices cover low-level shading languages reference, and the OpenGL shading language reference.