What is included with this book?
List of Figures | p. xiii |
List of Examples | p. xv |
List of Tables | p. xix |
Foreword xxi Preface | p. xxiii |
Acknowledgments | p. xxix |
About the Authors | p. xxxi |
Introduction to OpenGL ES 2.0 1 What Is OpenGL ES? | p. 1 |
OpenGL ES 2.0 3 Vertex Shader | p. 4 |
Primitive Assembly | p. 6 |
Rasterization | p. 7 |
Fragment Shader | p. 7 |
Per-Fragment Operations | p. 9 |
OpenGL ES 2.0 and OpenGL ES 1.x Backward Compatibility | p. 11 |
EGL | p. 12 |
Programming with OpenGL ES 2.0 13 Further Reading | p. 18 |
Hello Triangle: An OpenGL ES 2.0 Example | p. 19 |
Code Framework | p. 20 |
Where to Download the Examples | p. 20 |
Hello Triangle Example | p. 21 |
Building and Running the Examples | p. 25 |
Using the OpenGL ES 2.0 Framework | p. 26 |
Creating a Simple Vertex and Fragment Shader | p. 27 |
Compiling and Loading the Shaders | p. 29 |
Creating a Program Object and Linking the Shaders | p. 30 |
Setting the Viewport and Clearing the Color Buffer | p. 32 |
Loading the Geometry and Drawing a Primitive | p. 33 |
Displaying the Back Buffer | p. 33 |
An Introduction to EGL | p. 35 |
Communicating with the Windowing System | p. 36 |
Checking for Errors | p. 37 |
Initializing EGL | p. 37 |
Determining the Available Surface Configurations | p. 38 |
Querying EGLConfig Attributes | p. 39 |
Letting EGL Choose the Config | p. 39 |
Creating an On-Screen Rendering Area: The EGL Window | p. 43 |
Creating an Off-Screen Rendering Area: EGL Pbuffers | p. 46 |
Creating a Rendering Context | p. 50 |
Making an EGLContext Current | p. 52 |
Putting All Our EGL Knowledge Together | p. 52 |
Synchronizing Rendering | p. 54 |
Shaders and Programs | p. 57 |
Shaders and Programs | p. 57 |
Uniforms and Attributes | p. 67 |
Shader Compiler and Shader Binaries | p. 72 |
OpenGL ES Shading Language | p. 77 |
OpenGL ES Shading Language Basics | p. 78 |
Variables and Variable Types | p. 78 |
Variable Constructors | p. 79 |
Vector and Matrix Components | p. 81 |
Constants | p. 82 |
Structures | p. 82 |
Arrays | p. 83 |
Operators | p. 84 |
Functions | p. 85 |
Built-In Functions | p. 86 |
Control Flow Statements | p. 87 |
Uniforms 88 Attributes | p. 89 |
Varyings | p. 90 |
Preprocessor and Directives | p. 92 |
Uniform and Varying Packing | p. 94 |
Precision Qualifiers 96 Invariance | p. 97 |
Vertex Attributes, Vertex Arrays, and Buffer Objects | p. 101 |
Specifying Vertex Attribute Data | p. 102 |
Declaring Vertex Attribute Variables in a Vertex Shader | p. 110 |
Vertex Buffer Objects | p. 115 |
Mapping Buffer Objects | p. 124 |
Primitive Assembly and Rasterization | p. 127 |
Primitives | p. 127 |
Drawing Primitives | p. 131 |
Primitive Assembly | p. 136 |
Rasterization | p. 141 |
Vertex Shaders | p. 147 |
Vertex Shader Overview | p. 148 |
Vertex Shader Examples | p. 159 |
Generating Texture Coordinates | p. 167 |
Vertex Skinning | p. 168 |
OpenGL ES 1.1 Vertex Pipeline as an ES 2.0 Vertex Shader | p. 173 |
Texturing | p. 181 |
Texturing Basics | p. 181 |
Compressed Textures | p. 201 |
Texture Subimage Specification | p. 202 |
Copying Texture Data from the Color Buffer | p. 204 |
Optional Extensions | p. 207 |
Fragment Shaders | p. 215 |
Fixed Function Fragment Shaders | p. 216 |
Fragment Shader Overview | p. 218 |
Implementing Fixed Function Techniques Using Shaders | p. 222 |
Fragment Operations | p. 233 |
Buffers | p. 234 |
Fragment Tests and Operations | p. 238 |
Blending | p. 246 |
Dithering | p. 249 |
Multisampled Antialiasing | p. 249 |
Reading and Writing Pixels to the Framebuffer | p. 250 |
Framebuffer Objects | p. 253 |
Why Framebuffer Objects | p. 253 |
Framebuffer and Renderbuffer Objects | p. 255 |
Creating Framebuffer and Renderbuffer Objects | p. 258 |
Using Renderbuffer Objects 259 Using Framebuffer Objects | p. 262 |
Deleting Framebuffer and Renderbuffer Objects | p. 269 |
Examples | p. 271 |
Performance Tips and Tricks | p. 277 |
Advanced Programming with OpenGL ES 2.0 | p. 279 |
Per-Fragment Lighting | p. 279 |
Environment Mapping | p. 286 |
Particle System with Point Sprites | p. 290 |
Image Postprocessing | p. 296 |
Projective Texturing | |
Table of Contents provided by Publisher. All Rights Reserved. |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.