Comprehensive Tutorial and Reference
De som köpt den här boken har ofta också köpt Tomorrow, And Tomorrow, And Tomorrow av Gabrielle Zevin (häftad).
Köp båda 2 för 827 krVulkan Programming Guide introduces powerful 3D development techniques for fields ranging from video games to medical imaging, and state-of-the-art approaches to solving challenging scientific compute problems.
Graham Sellers is a software architect on the OpenGL driver team and engineering Fellow 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.
Figures xv
Tables xxi
Listings xxiii
Foreword xxxi
Preface xxxiii
Acknowledgments xxxix
About the Author xli
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 17
Drawing Our First Triangle 24
Summary 26
Chapter 3: Following the Pipeline 27
Passing Data to the Vertex Shader 28
Passing Data from Stage to Stage 30
Tessellation 33
Geometry Shaders 37
Primitive Assembly, Clipping, and Rasterization 39
Fragment Shaders 43
Framebuffer Operations 47
Compute Shaders 48
Using Extensions in OpenGL 49
Summary 54
Chapter 4: Math for 3D Graphics 55
Is This the Dreaded Math Chapter 56
A Crash Course in 3D Graphics Math 57
Understanding Transformations 69
Interpolation, Lines, Curves, and Splines 89
Summary 97
Chapter 5: Data 99
Buffers 100
Uniforms 117
Shader Storage Blocks 140
Atomic Counters 147
Textures 152
Summary 203
Chapter 6: Shaders and Programs 205
Language Overview 206
Compiling, Linking, and Examining Programs 219
Summary 238
Part II: In Depth 239
Chapter 7: Vertex Processing and Drawing Commands 241
Vertex Processing 242
Drawing Commands 249
Storing Transformed Vertices 278
Clipping 296
Summary 303
Chapter 8: Primitive Processing 305
Tessellation 306
Geometry Shaders 333
Summary 364
Chapter 9: Fragment Processing and the Framebuffer 365
Fragment Shaders 366
Per-Fragment Tests 369
Color Output 382
Off-Screen Rendering 390
Antialiasing 412
Advanced Framebuffer Formats 428
Point Sprites 448
Getting at Your Image 458
Summary 466
Chapter 10: Compute Shaders 467
Using Compute Shaders 468
Examples 479
Summary 502
Chapter 11: Advanced Data Management 503
Eliminating Binding 504
Sparsely Populated Textures 509
Texture Compression 516
Packed Data Formats 525
High-Quality Texture Filtering 527
Summary 531
Chapter 12: Controlling and Monitoring the Pipeline 533
Queries 534
Synchronization in OpenGL 556
Summary 562
Part III: In Practice 565
Chapter 13: Rendering Techniques 56...