| | Copyright |
| | Foreword |
| | Preface |
| | | About the Book |
| | | Intended Audience |
| | | Format of the Book |
| | | Conventions |
| | | OpenGL® Distilled Web Site |
| | Acknowledgments |
| | About the Author |
| | Chapter 1. An Introduction to OpenGL |
| | | Section 1.1. What Is OpenGL? |
| | | Section 1.2. GLUT |
| | | Section 1.3. GLU |
| | | Section 1.4. Development Environment |
| | | Section 1.5. A Simple Example |
| | | Section 1.6. History of OpenGL |
| | | Section 1.7. More Information |
| | | Section 1.8. References |
| | Chapter 2. Drawing Primitives |
| | | Section 2.1. OpenGL Primitives |
| | | Section 2.2. Specifying Vertex Data |
| | | Section 2.3. Drawing Details |
| | | Section 2.4. Performance Issues |
| | | Section 2.5. More Information |
| | | Section 2.6. References |
| | Chapter 3. Transformation and Viewing |
| | | Section 3.1. Coordinate Systems and Matrices |
| | | Section 3.2. The Transformation Pipeline |
| | | Section 3.3. Setting the Model-View Matrix |
| | | Section 3.4. Perspective and Parallel Projections |
| | | Section 3.5. The Viewport |
| | | Section 3.6. Selection |
| | | Section 3.7. More Information |
| | | Section 3.8. References |
| | Chapter 4. Lighting |
| | | Section 4.1. Overview |
| | | Section 4.2. Normals |
| | | Section 4.3. Light Parameters |
| | | Section 4.4. Material Parameters |
| | | Section 4.5. Positional and Directional Lights |
| | | Section 4.6. Debugging Lights |
| | | Section 4.7. More Information |
| | | Section 4.8. References |
| | Chapter 5. Pixel Rectangles |
| | | Section 5.1. Drawing Pixels |
| | | Section 5.2. Reading Pixels |
| | | Section 5.3. Copying Pixels |
| | | Section 5.4. Performance Issues |
| | | Section 5.5. Debugging |
| | | Section 5.6. More Information |
| | | Section 5.7. References |
| | Chapter 6. Texture Mapping |
| | | Section 6.1. Using Texture Maps |
| | | Section 6.2. Lighting and Shadows with Texture |
| | | Section 6.3. Debugging |
| | | Section 6.4. More Information |
| | | Section 6.5. References |
| | Chapter 7. Extensions and Versions |
| | | Section 7.1. Extensions |
| | | Section 7.2. Versions |
| | | Section 7.3. Extension- and Version-Safe Code |
| | | Section 7.4. More Information |
| | Chapter 8. Platform-Specific Interfaces |
| | | Section 8.1. Concepts |
| | | Section 8.2. Apple Mac OS X |
| | | Section 8.3. Linux |
| | | Section 8.4. Microsoft Windows |
| | | Section 8.5. More Information |
| | | Section 8.6. References |
| | Appendix A. Other Features |
| | | Section A.1. Multisample |
| | | Section A.2. Occlusion Queries |
| | | Section A.3. Fog |
| | | Section A.4. Clip Planes |
| | | Section A.5. Stencil |
| | | Section A.6. The Accumulation Buffer |
| | | Section A.7. Shading Language |
| | | Section A.8. References |
| | Appendix B. Best Practices |
| | | Section B.1. State |
| | | Section B.2. Errors |
| | | Section B.3. Precision |
| | | Section B.4. Objects |
| | Appendix C. Performance |
| | | Section C.1. Measure Performance |
| | | Section C.2. Avoid Software Rendering |
| | | Section C.3. Reduce Pipeline Bottlenecks |
| | | Section C.4. Cull Unseen Geometry |
| | | Section C.5. State Changes and Queries |
| | Appendix D. Troubleshooting and Debugging |
| | | Section D.1. Debugging Tools |
| | | Section D.2. OpenGL Errors |
| | | Section D.3. Debugging a Blank Window |
| | Bibliography |
| | Color Plates |
| | Index |