Home > Store

OpenGL Superbible: Comprehensive Tutorial and Reference, 7th Edition

OpenGL Superbible: Comprehensive Tutorial and Reference, 7th Edition

eBook (Watermarked)

  • Your Price: $38.39
  • List Price: $47.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    MOBI MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

    Adobe Reader PDF The popular standard, used most often with the free Adobe® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

Also available in other formats.

Register your product to gain access to bonus material or receive a coupon.


  • Copyright 2016
  • Dimensions: 7" x 9-1/8"
  • Edition: 7th
  • eBook (Watermarked)
  • ISBN-10: 0-13-419313-X
  • ISBN-13: 978-0-13-419313-7

OpenGL® SuperBible, Seventh Edition, is the definitive programmer’s guide, tutorial, and reference for OpenGL 4.5, the world’s leading 3D API for real-time computer graphics. The best introduction for any developer, it clearly explains OpenGL’s newest APIs; key extensions; shaders; and essential, related concepts. You’ll find up-to-date, hands-on guidance for all facets of modern OpenGL development—both desktop and mobile.

The authors explain what OpenGL does, how it connects to the graphics pipeline, and how it manages huge datasets to deliver compelling experiences. Step by step, they present increasingly sophisticated techniques, illuminating key concepts with worked examples. They introduce OpenGL on several popular platforms, and offer up-to-date best practices and performance advice.

This revised and updated edition introduces many new OpenGL 4.5 features, including important ARB and KHR extensions that are now part of the standard. It thoroughly covers the latest Approaching Zero Driver Overhead (AZDO) performance features, and demonstrates key enhancements with new example applications.

Coverage includes

  • A practical introduction to real-time 3D graphics, including foundational math
  • Core techniques for rendering, transformations, and texturing
  • Shaders and the OpenGL Shading Language (GLSL) in depth
  • Vertex processing, drawing commands, primitives, fragments, and framebuffers
  • Compute shaders: harnessing graphics cards for more than graphics
  • Pipeline monitoring and control
  • Managing, loading, and arbitrating access to data
  • Building larger applications and deploying them across platforms
  • Advanced rendering: light simulation, artistic and non-photorealistic effects, and more
  • Reducing CPU overhead and analyzing GPU behavior
  • Supercharging performance with persistent maps, bindless textures, and fine-grained synchronization
  • Preventing and debugging errors
  • New applications: texture compression, text drawing, font rendering with distance fields, high-quality texture filtering, and OpenMP 

Bonus material and sample code are available at openglsuperbible.com.

Sample Content

Table of Contents

Figures xv

Tables xxi

Listings xxiii

Foreword xxxi

Preface xxxiii

Acknowledgments xxxix

About the Author xli

Part I: Foundations 1

Chapter 1: Introduction 3

OpenGL and the Graphics Pipeline 4

The Origins and Evolution of OpenGL 6

Primitives, Pipelines, and Pixels 10

Summary 11

Chapter 2: Our First OpenGL Program 13

Creating a Simple Application 14

Using Shaders 17

Drawing Our First Triangle 24

Summary 26

Chapter 3: Following the Pipeline 27

Passing Data to the Vertex Shader 28

Passing Data from Stage to Stage 30

Tessellation 33

Geometry Shaders 37

Primitive Assembly, Clipping, and Rasterization 39

Fragment Shaders 43

Framebuffer Operations 47

Compute Shaders 48

Using Extensions in OpenGL 49

Summary 54

Chapter 4: Math for 3D Graphics 55

Is This the Dreaded Math Chapter 56

A Crash Course in 3D Graphics Math 57

Understanding Transformations 69

Interpolation, Lines, Curves, and Splines 89

Summary 97

Chapter 5: Data 99

Buffers 100

Uniforms 117

Shader Storage Blocks 140

Atomic Counters 147

Textures 152

Summary 203

Chapter 6: Shaders and Programs 205

Language Overview 206

Compiling, Linking, and Examining Programs 219

Summary 238

Part II: In Depth 239

Chapter 7: Vertex Processing and Drawing Commands 241

Vertex Processing 242

Drawing Commands 249

Storing Transformed Vertices 278

Clipping 296

Summary 303

Chapter 8: Primitive Processing 305

Tessellation 306

Geometry Shaders 333

Summary 364

Chapter 9: Fragment Processing and the Framebuffer 365

Fragment Shaders 366

Per-Fragment Tests 369

Color Output 382

Off-Screen Rendering 390

Antialiasing 412

Advanced Framebuffer Formats 428

Point Sprites 448

Getting at Your Image 458

Summary 466

Chapter 10: Compute Shaders 467

Using Compute Shaders 468

Examples 479

Summary 502

Chapter 11: Advanced Data Management 503

Eliminating Binding 504

Sparsely Populated Textures 509

Texture Compression 516

Packed Data Formats 525

High-Quality Texture Filtering 527

Summary 531

Chapter 12: Controlling and Monitoring the Pipeline 533

Queries 534

Synchronization in OpenGL 556

Summary 562

Part III: In Practice 565

Chapter 13: Rendering Techniques 567

Lighting Models 568

Non-Photo-Realistic Rendering 610

Alternative Rendering Methods 613

Two-Dimensional Graphics 647

Summary 659

Chapter 14: High-Performance OpenGL 661

Optimizing CPU Performance 661

Low-Overhead OpenGL 677

Performance Analysis Tools 699

Summary 726

Chapter 15: Debugging and Stability 729

Debugging Your Applications 730

Security and Robustness 737

Summary 742


Appendix A: Further Reading 743

Appendix B: The SBM File Format 749

Appendix C: The SuperBible Tools 759

Glossary 797

Index 805


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership