OpenGL Superbible - Graham M. Sellers, Richard S. Wright, Nicholas Haemel

OpenGL Superbible

Buch | Softcover
848 Seiten
2013 | 6th Revised edition
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-321-90294-8 (ISBN)
45,90 inkl. MwSt
zur Neuauflage
  • Titel gebraucht verfügbar
  • Artikel merken
Studibuch Logo

...gebraucht verfügbar!

Zu diesem Artikel existiert eine Nachauflage
OpenGL(R) SuperBible, Sixth Edition, is the definitive programmer's guide, tutorial, and reference for the world's leading 3D API for real-time computer graphics, OpenGL 4.3. The best all-around introduction to OpenGL for developers at all levels of experience, it clearly explains both the newest API and indispensable related concepts. You'll find up-to-date, hands-on guidance for all facets of modern OpenGL development on both desktop and mobile platforms, including transformations, texture mapping, shaders, buffers, geometry management, and much more. Extensively revised, this edition presents many new OpenGL 4.3 features, including compute shaders, texture views, indirect draws, and enhanced API debugging. It has been reorganized to focus more tightly on the API, to cover the entire pipeline earlier, and to help you thoroughly understand the interactions between OpenGL and graphics hardware. Coverage includes * A practical introduction to the essentials of realtime 3D graphics * Core OpenGL 4.3 techniques for rendering, transformations, and texturing * Foundational math for creating interesting 3D graphics with OpenGL * Writing your own shaders, with examples to get you started * Cross-platform OpenGL, including essential platform-specific API initialization material for Linux, OS X, and Windows * Vertex processing, drawing commands, primitive processing, fragments, and framebuffers * Using compute shaders to harness today's graphics cards for more than graphics * Monitoring and controlling the OpenGL graphics pipeline * Advanced rendering: light simulation, artistic and non-photo-realistic rendering, and deferred shading * Modern OpenGL debugging and performance optimization Bonus material and sample code are available from the companion Web site, openglsuperbible.
com.

Graham Sellers is a senior manager and software architect on the OpenGL driver team at AMD. He represents AMD at the ARB and has contributed to many extensions and to the core OpenGL Specification. He holds several patents in the fields of computer graphics and image processing. Richard S. Wright, Jr., senior software engineer for Software Bisque, develops multimedia astronomy and planetarium software using OpenGL. He has written many OpenGL-based games, scientific/medical applications, database visualization tools, and educational programs. He has taught OpenGL programming at Full Sail University's game design degree program for over a decade. Nicholas Haemel, senior manager of Tegra OpenGL driver development at NVIDIA, leads a development team working on NVIDIA mobile graphics drivers, represents NVIDIA at the Khronos Group standards body, has authored many OpenGL extensions, and contributed to all OpenGL specifications since version 3.0.

Figures xv Tables xxiii Listings xxv Foreword xxxiii Preface xxxv Acknowledgments xli About the Authors xlv 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 16 Drawing Our First Triangle 24 Summary 25 Chapter 3: Following the Pipeline 27 Passing Data to the Vertex Shader 28 Passing Data from Stage to Stage 29 Tessellation 32 Geometry Shaders 36 Primitive Assembly, Clipping, and Rasterization 38 Fragment Shaders 42 Framebuffer Operations 45 Compute Shaders 47 Summary 48 Chapter 4: Math for 3D Graphics 49 Is This the Dreaded Math Chapter? 50 A Crash Course in 3D Graphics Math 51 Understanding Transformations 63 Interpolation, Lines, Curves, and Splines 82 Summary 90 Chapter 5: Data 91 Buffers 92 Uniforms 103 Shader Storage Blocks 126 Atomic Counters 133 Textures 137 Summary 185 Chapter 6: Shaders and Programs 187 Language Overview 188 Compiling, Linking, and Examining Programs 201 Summary 219 Part II: In Depth 221 Chapter 7: Vertex Processing and Drawing Commands 223 Vertex Processing 224 Drawing Commands 231 Storing Transformed Vertices 259 Clipping 276 Summary 282 Chapter 8: Primitive Processing 283 Tessellation 284 Geometry Shaders 310 Summary 340 Chapter 9: Fragment Processing and the Framebuffer 341 Fragment Shaders 342 Per-Fragment Tests 345 Color Output 357 Off-Screen Rendering 364 Antialiasing 384 Advanced Framebuffer Formats 399 Point Sprites 419 Getting at Your Image 428 Summary 435 Chapter 10: Compute Shaders 437 Using Compute Shaders 438 Examples 449 Summary 471 Chapter 11: Controlling and Monitoring the Pipeline 473 Queries 474 Synchronization in OpenGL 493 Summary 498 Part III: In Practice 501 Chapter 12: Rendering Techniques 503 Lighting Models 504 Non-Photo-Realistic Rendering 544 Alternative Rendering Methods 548 Summary 580 Chapter 13: Debugging and Performance Optimization 581 Debugging Your Applications 582 Performance Optimization 589 Summary 616 Chapter 14: Platform Specifics 617 Using Extensions in OpenGL 618 OpenGL on Windows 623 OpenGL on Mac OS X 647 OpenGL on Linux 682 OpenGL on Mobile Platforms 705 Summary 744 Appendix A: Further Reading 747 Appendix B: The SBM File Format 751 Appendix C: The SuperBible Tools 759 Glossary 765 Index 773

Erscheint lt. Verlag 1.8.2013
Zusatzinfo Illustrations
Verlagsort New Jersey
Sprache englisch
Maße 180 x 232 mm
Gewicht 1329 g
Einbandart kartoniert
Themenwelt Informatik Grafik / Design Film- / Video-Bearbeitung
ISBN-10 0-321-90294-7 / 0321902947
ISBN-13 978-0-321-90294-8 / 9780321902948
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich