Book description
Includes Complete Coverage of the OpenGL® Shading Language!
Today’s OpenGL software interface enables programmers to produce extraordinarily high-quality computer-generated images and interactive applications using 2D and 3D objects, color images, and programmable shaders.
OpenGL® Programming Guide: The Official Guide to Learning OpenGL®, Version 4.3, Eighth Edition, has been almost completely rewritten and provides definitive, comprehensive information on OpenGL and the OpenGL Shading Language. This edition of the best-selling “Red Book” describes the features through OpenGL version 4.3. It also includes updated information and techniques formerly covered in OpenGL® Shading Language (the “Orange Book”).
For the first time, this guide completely integrates shader techniques, alongside classic, functioncentric techniques. Extensive new text and code are presented, demonstrating the latest in OpenGL programming techniques.
OpenGL® Programming Guide, Eighth Edition, provides clear explanations of OpenGL functionality and techniques, including processing geometric objects with vertex, tessellation, and geometry shaders using geometric transformations and viewing matrices; working with pixels and texture maps through fragment shaders; and advanced data techniques using framebuffer objects and compute shaders.
New OpenGL features covered in this edition include
Best practices and sample code for taking full advantage of shaders and the entire shading pipeline (including geometry and tessellation shaders)
Integration of general computation into the rendering pipeline via compute shaders
Techniques for binding multiple shader programs at once during application execution
Latest GLSL features for doing advanced shading techniques
Additional new techniques for optimizing graphics program performance
Table of contents
- Title Page
- Copyright Page
- Praise for OpenGL® Programming Guide, Eighth Edition
- Dedication Page
- Contents
- Figures
- Tables
- Examples
- About This Guide
- Chapter 1. Introduction to OpenGL
- Chapter 2. Shader Fundamentals
- Chapter 3. Drawing with OpenGL
- Chapter 4. Color, Pixels, and Framebuffers
- Chapter 5. Viewing Transformations, Clipping, and Feedback
- Chapter 6. Textures
- 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. Basics of GLUT: The OpenGL Utility Toolkit
- 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
- Noise 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
- Textures
- Textures
- Textures
- Texture Environment
- Pixel Operations
- Framebuffer Controls
- Framebuffer State
- Framebuffer State
- Frambuffer State
- Renderbuffer 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. OpenGL and Window Systems
- Appendix G. Floating-Point Formats for Textures, Framebuffers, and Renderbuffers
- Appendix H. Debugging and Profiling OpenGL
- Appendix I. Buffer Object Layouts
- Glossary
- Index
- Ad Page
Product information
- Title: OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3, Eighth Edition
- Author(s):
- Release date: March 2013
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780132748445
You might also like
book
Computer Graphics Through OpenGL, 2nd Edition
From geometric primitives to animation to 3D modeling to lighting, shading, and texturing, Computer Graphics Through …
book
Learn OpenGL
A step-by-step instructional guide to understanding the fundamentals of game development with OpenGL. Right from the …
video
Learn Modern OpenGL Programming
This course will introduce you to modern OpenGL programming. We’ll teach you a brief history of …
book
OpenGL 4 Shading Language Cookbook - Third Edition
Over 70 recipes that cover advanced techniques for 3D programming such as lighting, shading, textures, particle …