Book description
Complete Coverage of OpenGL® 4.5—the Latest Version (Includes 4.5, 4.4, SPIR-V, and Extensions)
The latest version of today’s leading worldwide standard for computer graphics, OpenGL 4.5 delivers significant improvements in application efficiency, flexibility, and performance. OpenGL 4.5 is an exceptionally mature and robust platform for programming high-quality computer-generated images and interactive applications using 2D and 3D objects, color images, and shaders.
OpenGL® Programming Guide, Ninth Edition, presents definitive, comprehensive information on OpenGL 4.5, 4.4, SPIR-V, OpenGL extensions, and the OpenGL Shading Language. It will serve you for as long as you write or maintain OpenGL code.
This edition of the best-selling “Red Book” fully integrates shader techniques alongside classic, function-centric approaches, and contains extensive code examples that demonstrate modern techniques. Starting with the fundamentals, its wide-ranging coverage includes drawing, color, pixels, fragments, transformations, textures, framebuffers, light and shadow, and memory techniques for advanced rendering and nongraphical applications. It also offers discussions of all shader stages, including thorough explorations of tessellation, geometric, and compute shaders.
New coverage in this edition includes
Thorough coverage of OpenGL 4.5 Direct State Access (DSA), which overhauls the OpenGL programming model and how applications access objects
Deeper discussions and more examples of shader functionality and GPU processing, reflecting industry trends to move functionality onto graphics processors
Demonstrations and examples of key features based on community feedback and suggestions
Updated appendixes covering the latest OpenGL libraries, related APIs, functions, variables, formats, and debugging and profiling techniques
Table of contents
- About This E-Book
- Title Page
- Copyright Page
- Praise for previous editions of OpenGL® Programming Guide
- Dedication Page
- Contents
- Figures
- Tables
- Examples
- About This Guide
- Acknowledgments
- Chapter 1. Introduction to OpenGL
- Chapter 2. Shader Fundamentals
- Chapter 3. Drawing with OpenGL
- Chapter 4. Color, Pixels, and Fragments
- Chapter 5. Viewing Transformations, Culling, Clipping, and Feedback
-
Chapter 6. Textures and Framebuffers
- Introduction to Texturing
- Basic Texture Types
- Creating and Initializing Textures
- Specifying Texture Data
- Texture Formats
- Compressed Textures
- Sampler Objects
- Using Textures
- Complex Texture Types
- Texture Views
- Filtering
- Advanced Texture Lookup Functions
- Bindless Textures
- Sparse Textures
- Point Sprites
- Framebuffer Objects
- Rendering to Texture Maps
- Chapter Summary
- Chapter 7. Light and Shadow
- Chapter 8. Procedural Texturing
- Chapter 9. Tessellation Shaders
- Chapter 10. Geometry Shaders
- Chapter 11. Memory
- Chapter 12. Compute Shaders
- Appendix A. Support Libraries
- Appendix B. OpenGL ES and WebGL
-
Appendix C. Built-in GLSL Variables and Functions
- Built-in Variables
- Built-in Constants
-
Built-in Functions
- Angle and Trigonometry Functions
- Exponential Functions
- Common Functions
- Floating-Point Pack and Unpack Functions
- Geometric Functions
- Matrix Functions
- Vector Relational Functions
- Integer Functions
- Texture Functions
- Atomic-Counter Functions
- Atomic Memory Functions
- Image Functions
- Fragment Processing Functions
- Geometry Shader Functions
- Shader Invocation Control Functions
- Shader Memory Control Functions
-
Appendix D. State Variables
- The Query Commands
-
OpenGL State Variables
- Current Values and Associated Data
- Vertex Array Object State
- Vertex Array Data
- Buffer Object State
- Transformation State
- Coloring State
- Rasterization State
- Multisampling
- Textures
- Pixel Operations
- Framebuffer Controls
- Framebuffer State
- Renderbuffer State
- Pixel State
- Shader Object State
- Shader Program Pipeline Object State
- Shader Program Object State
- Program Interface State
- Program Object Resource State
- Vertex and Geometry Shader State
- Query Object State
- Image State
- Transform Feedback State
- Atomic Counter State
- Shader Storage Buffer State
- Sync Object State
- Hints
- Compute Dispatch State
- Implementation-Dependent Values
- Tessellation Shader Implementation-Dependent Limits
- Geometry Shader Implementation-Dependent Limits
- Fragment Shader Implementation-Dependent Limits
- Implementation-Dependent Compute Shader Limits
- Implementation-Dependent Shader Limits
- Implementation-Dependent Debug Output State
- Implementation-Dependent Values
- Internal Format-Dependent Values
- Implementation-Dependent Transform Feedback Limits
- Framebuffer-Dependent Values
- Miscellaneous
- Appendix E. Homogeneous Coordinates and Transformation Matrices
- Appendix F. Floating-Point Formats for Textures, Framebuffers, and Renderbuffers
- Appendix G. Debugging and Profiling OpenGL
- Appendix H. Buffer Object Layouts
- Glossary
- Index
- Code Snippets
Product information
- Title: OpenGL® Programming Guide: The Official Guide to Learning OpenGL®, Version 4.5 with SPIR-V, Ninth Edition
- Author(s):
- Release date: July 2016
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780134495514
You might also like
book
JavaScript: The Definitive Guide, 7th Edition
JavaScript is the programming language of the web and is used by more software developers today …
book
Programming TypeScript
Any programmer working with a dynamically typed language will tell you how hard it is to …
book
C# 10 and .NET 6 – Modern Cross-Platform Development - Sixth Edition
Publisher’s Note: Microsoft will stop supporting .NET 6 from November 2024. The newer 8th edition of …
book
Programming in C, Fourth Edition
will teach you how to write programs in the C programming language. Whether you’re a novice …