About the Book


OpenGL® Distilled is a concise book about the essential, commonly used features of modern OpenGL, the industry-standard cross-platform API for high-performance 3D computer graphics. By focusing on essential OpenGL features, eliminating discussion of algorithms, and pointing the reader to sources of additional information, OpenGL® Distilled provides useful information quickly and concisely.

OpenGL version 1.0 was introduced by SGI in 1992 and quickly dominated the 3D software development industry. It is available for several versions of Microsoft Windows, Linux, and Unix, and for Apple Mac OS. Graphics hardware manufacturers supporting OpenGL include 3Dlabs, ATI, Intel, Matrox, NVIDIA, and SGI.

The fact that OpenGL is an open standard is certainly one reason for its popularity. The OpenGL feature set is determined by the OpenGL Architecture Review Board (ARB), a governing body composed of representatives from several major hardware and software companies.[1] This group meets regularly to discuss and approve additions and modifications to the OpenGL specification. The ARB's multivendor nature ensures that OpenGL runs equally well on a wide variety of graphics architectures.

[1] The voting members of the ARB as of January 2006 are 3Dlabs, Apple, ATI, Dell, IBM, Intel, NVIDIA, SGI, and Sun.

This book documents OpenGL version 2.0, released in September 2004. Although OpenGL has evolved significantly since its initial release, each version has remained compatible with previous versions. The benefits of backward compatibility are obvious, and several companies have taken advantage of OpenGL's stability to amortize the expense of software development.

Over time, some older OpenGL features fell into disfavor as the ARB added new rendering methods and paradigms to the OpenGL standard. Still other features never quite caught on with the developer community for a variety of reasons, such as corner-case or platform-specific applicability, overlapping or limited functionality, or nearly universal inefficient implementation.

The addition of new functionality, while continuing to keep older (and increasingly obsolete) features for backward compatibility, has resulted in a bulky and more complex OpenGL specification. Consider:

  • In 1992, the original OpenGL version 1.0 specification contained 163 pages. Today, the OpenGL version 2.0 specification contains 368 pages, and the OpenGL Shading Language supplement increases this page count to a total of 474.

  • Addison-Wesley's definitive OpenGL® Programming Guide and OpenGL® Reference Manual (the red and blue books), first published in 1993 to document the OpenGL version 1.0 standard, totaled 960 pages. In their most recent editions, documenting OpenGL versions 1.4 and 2.0, they total more than 1,600 pages. With the addition of the recently published OpenGL® Shading Language, Second Edition (the orange book), the page count tops 2,400.

Although such comprehensive documentation is indispensable for experienced programmers, the documentation's growth in size and complexity over the years has increased the learning curve for new OpenGL developers. Furthermore, finding advice on accepted modern usage is difficult for new OpenGL programmers due to the sheer magnitude of information or time wasted learning outdated methodologies and paradigms.

OpenGL® Distilled addresses these issues by presenting only the essential elements of modern OpenGL used in current 3D software development. To meet this goal, several features of OpenGL have been left out of this book. OpenGL® Distilled presents the commonly used features and accepted practices in modern OpenGL programming. Features that have fallen into disfavor are omitted except where they help illustrate accepted practices or important concepts. Each chapter begins with a summary of what is and what is not covered.

To reduce the learning curve further, OpenGL® Distilled presents information in a direct, how-to style so that readers can find information quickly without wading through extraneous information. For this reason, there is little explanation or discussion of graphics algorithms. Shadow algorithms (discussed in Chapter 6) are the exception because of their almost-universal applicability and lack of direct OpenGL support. For other algorithms, OpenGL® Distilled assumes that the reader is familiar with computer graphics or is reading OpenGL® Distilled as part of a university-level computer graphics course.

This book presents the subset of OpenGL that most programmers can use to do the majority of their OpenGL programming. Because this material is a subset, the reader will likely desire access to more information. For this reason, OpenGL® Distilled serves as a gateway or road map to additional OpenGL and 3D graphics programming information. This book will frequently refer to the following resources:

  • The official OpenGL Web site, http://www.opengl.org, is home to several developer forums, example programs, utility libraries, white papers, documentation, hyperlinks, and other valuable OpenGL resources.

  • The OpenGL Graphics System: A Specification, by Mark Segal and Kurt Akeley, edited by Jon Leech, is OpenGL's complete and formal specification. Though intended for OpenGL implementers, its information is indispensable for application programmers. It's freely available as a PDF file from the OpenGL Web site.

  • OpenGL® Programming Guide, Fifth Edition, by OpenGL ARB, Dave Shreiner, Mason Woo, Jackie Neider, and Tom Davis (Addison-Wesley), better known as the red book, is the definitive OpenGL programming guide. Furthermore, it contains extensive discussions of graphics algorithms and their implementation in OpenGL.

  • OpenGL® Reference Manual, Fourth Edition, by OpenGL ARB and Dave Shreiner (Addison-Wesley), better known as the blue book, is the definitive OpenGL programmer's reference.

  • OpenGL® Shading Language, Second Edition, by Randi Rost (Addison-Wesley), better known as the orange book, documents OpenGL's interface to programmable graphics hardware. This functionality is part of the OpenGL version 2.0 specification.

  • Computer Graphics: Principles and Practice, Second Edition, by James D. Foley, Andries van Dam, Steven K. Feiner, and John F. Hughes (Addison-Wesley), and 3D Computer Graphics, by Alan Watt (Addison-Wesley), are both excellent general 2D and 3D computer graphics texts.




OpenGL Distilled
OpenGL Distilled
ISBN: 0321336798
EAN: 2147483647
Year: 2007
Pages: 123
Authors: Paul Martz

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net