OpenGL SuperBible: Comprehensive Tutorial and Reference

OpenGL SuperBible: Comprehensive Tutorial and Reference

by Benjamin Lipchak (Author), RichardS.WrightJr. (Author), NicholasHaemel (Author)

Synopsis

OpenGL (R) SuperBible, Fourth Edition, begins by illuminating the core techniques of classic OpenGL graphics programming, from drawing in space to geometric transformations, from lighting to texture mapping. The authors cover newer OpenGL capabilities, including OpenGL 2.1's powerful programmable pipeline, vertex and fragment shaders, and advanced buffers. They also present thorough, up-to-date introductions to OpenGL implementations on multiple platforms, including Windows, Mac OS X, GNU/Linux, UNIX, and embedded systems.

Coverage includes

* An entirely new chapter on OpenGL ES programming for handhelds

* Completely rewritten chapters on OpenGL for Mac OS X and GNU/Linux

* Up-to-the-minute coverage of OpenGL on Windows Vista

* New material on floating-point color buffers and off-screen rendering

* In-depth introductions to 3D modeling and object composition

* Expert techniques for utilizing OpenGL's programmable shading language

* Thorough coverage of curves, surfaces, interactive graphics, textures, shadows, and much more

* A fully updated API reference, and an all-new section of full-color images

You'll rely on this book constantly-whether you're learning OpenGL for the first time, deepening your graphics programming expertise, upgrading from older versions of OpenGL, or porting applications from other environments.

Now part of the OpenGL Technical Library-The official knowledge resource for OpenGL developers

The OpenGL Technical Library provides tutorial and reference books for OpenGL. The Library enables programmers to gain a practical understanding of OpenGL and shows them how to unlock its full potential. Originally developed by SGI, the Library continues to evolve under the auspices of the OpenGL Architecture Review Board (ARB) Steering Group (now part of the Khronos Group), an industry consortium responsible for guiding the evolution of OpenGL and related technologies.

Contents

Preface xxvii

About the Authors xxxv

Introduction 1

Part I: The Old Testament

Chapter 1 Introduction to 3D Graphics and OpenGL 9

Chapter 2 Using OpenGL 33

Chapter 3 Drawing in Space: Geometric Primitives and Buffers 73

Chapter 4 Geometric Transformations: The Pipeline 127

Chapter 5 Color, Materials, and Lighting: The Basics 173

Chapter 6 More on Colors and Materials 229

Chapter 7 Imaging with OpenGL 251

Chapter 8 Texture Mapping: The Basics 303

Chapter 9 Texture Mapping: Beyond the Basics 341

Chapter 10 Curves and Surfaces 377

Chapter 11 It's All About the Pipeline: Faster Geometry Throughput 421

Chapter 12 Interactive Graphics 457

Chapter 13 Occlusion Queries: Why Do More Work Than You Need To? 481

Chapter 14 Depth Textures and Shadows 495

Part II: The New Testament

Chapter 15 Programmable Pipeline: This Isn't Your Father's OpenGL 515

Chapter 16 Vertex Shading: Do-It-Yourself Transform, Lighting, and Texgen 547

Chapter 17 Fragment Shading: Empower Your Pixel Processing 567

Chapter 18 Advanced Buffers 601

Part III: The Apocrypha

Chapter 19 Wiggle: OpenGL on Windows 641

Chapter 20 OpenGL on Mac OS X 685

Chapter 21 OpenGL on Linux 713

Chapter 22 OpenGL ES - OpenGL on the Small 735

Appendix A Further Reading/References 773

Appendix B Glossary 777

Appendix C API Reference 783

Index 1141

$6.79

Save:$47.11 (87%)

Quantity

2 in stock

More Information

Format: Paperback
Pages: 1248
Edition: 4
Publisher: Addison Wesley
Published: 18 Jun 2007

ISBN 10: 0321498828
ISBN 13: 9780321498823
Book Overview:

OpenGL (R) SuperBible, Fourth Edition, begins by illuminating the core techniques of classic OpenGL graphics programming, from drawing in space to geometric transformations, from lighting to texture mapping. The authors cover newer OpenGL capabilities, including OpenGL 2.1's powerful programmable pipeline, vertex and fragment shaders, and advanced buffers. They also present thorough, up-to-date introductions to OpenGL implementations on multiple platforms, including Windows, Mac OS X, Linux/UNIX, and embedded systems.

Coverage includes

* An entirely new chapter on OpenGL ES programming for handhelds

* Completely rewritten chapters on OpenGL for Mac OS X and Linux

* Up-to-the-minute coverage of OpenGL on Windows Vista

* New material on floating point color buffers and off-screen rendering

* In-depth introductions to 3D modeling and object composition

* Expert techniques for utilizing OpenGL's programmable shader language

* Thorough coverage of curves, surfaces, interactive graphics, textures, shadows, and much more

* A fully updated API reference, and an all-new section of color images

You'll rely on this book constantly-whether you're learning OpenGL for the first time, deepening your graphics programming expertise, upgrading from older versions of OpenGL, or porting applications from other environments.

Now part of the OpenGL Technical Library-The official knowledge resource for OpenGL developers

The OpenGL Technical Library provides tutorial and reference books for OpenGL. The Library enables programmers to gain a practical understanding of OpenGL and shows them how to unlock its full potential. Originally developed by SGI, the Library continues to evolve under the auspices of the Architecture Review Board (ARB), an industry consortium responsible for guiding the evolution of OpenGL and related technologies. The OpenGL ARB is composed of leaders in the computer graphics industry: 3DLabs, Apple, ATI, Dell, IBM, Intel, NVIDIA, SGI, and Sun Microsystems.

About the Web Site

The companion web site contains sample code, plus bonus content.


Author Bio

Richard S. Wright, Jr.has been using OpenGL for more than 12 years, since it first became available on the Windows platform, and teaches OpenGL programming in the game design degree program at Full Sail in Orlando, Florida. Currently, Richard is the president of Starstone Software Systems, Inc., where he develops third-party multimedia simulation software for the PC and Macintosh platforms using OpenGL.

Previously with Real 3D/Lockheed Martin, Richard was a regular OpenGL ARB attendee and contributed to the OpenGL 1.2 specification and conformance tests. Since then, Richard has worked in multidimensional database visualization, game development, medical diagnostic visualization, and astronomical space simulation.

Richard first learned to program in the eighth grade in 1978 on a paper terminal. At age 16, his parents let him buy a computer with his grass-cutting money instead of a car, and he sold his first computer program less than a year later (and it was a graphics program!). When he graduated from high school, his first job was teaching programming and computer literacy for a local consumer education company. He studied electrical engineering and computer science at the University of Louisville's Speed Scientific School and made it half way through his senior year before his career got the best of him and took him to Florida. A native of Louisville, Kentucky, he now lives with his wife and three children in Lake Mary, Florida. When not programming or dodging hurricanes, Richard is an avid amateur astronomer and an Adult Sunday School teacher.

Benjamin Lipchak graduated from Worcester Polytechnic Institute with a double major in technical writing and computer science. Why would anyone with a CS degree want to become a writer? That was the question asked of him one fateful morning when Benj was interviewing for a tech writing job at Digital Equipment Corporation. Benj's interview took longer than scheduled, and he left that day with job offer in hand to work on the software team responsible for DEC's AlphaStation OpenGL drivers.

Benj's participation in the OpenGL Architecture Review Board began when he chaired the working group that generated the GL_ARB_fragment_program extension spec. While chairing the Khronos OpenGL Ecosystem Technical SubGroup, he established the OpenGL SDK and created the OpenGL Pipeline newsletter, of which he remains editor.

Benj will now participate in the Khronos OpenGL ES Working Group. After 12 years of OpenGL driver development and driver team management at DEC, Compaq, and ATI, he is headed for smaller pastures. Benj recently became manager of AMD's handheld software team. Although the API is familiar, the new challenges of size and power consumption make for a great change of scenery. In his fleeting spare time, Benj tries to get outdoors for some hiking or kayaking. He also operates an independent record label, Wachusett Records, specializing in solo piano music.

Nicholas Haemel, developer at AMD in the Graphics Products Group, was technical reviewer for OpenGL SuperBible, Third Edition, and contributed the chapters on GLX and OpenGL ES.