OpenGL SuperBible: Comprehensive Tutorial and Reference

Free Download

Authors:

Edition: 4

ISBN: 9780321498823, 0-321-49882-8

Size: 15 MB (15844179 bytes)

Pages: 1262/1262

File format:

Language:

Publishing Year:

Richard S. Wright, Benjamin Lipchak, Nicholas Haemel9780321498823, 0-321-49882-8

OpenGL SuperBible, Third Edition is a comprehensive, hands-on guide that provides everything you need to program with the new version of OpenGL. This newly expanded edition covers OpenGL 1.5, OpenGL 2.0’s Shading Language, ARB low-level shader extensions, and programming details for Windows, Mac OS X, and Linux. Designed for programmers who want to master OpenGL and expand their knowledge of graphics programming and 3D graphics, and also for seasoned OpenGL programmers who need assistance porting their applications, this learning tool serves as both a tutorial and a reference manual that can be used time and again. Find the necessary guidance in applying complex concepts, such as drawing in space; points, lines, and polygons; moving around in space; color, lighting, and materials; raster graphics in OpenGL; texture mapping; 3D modeling and object composition; fog and blending visual effects; curves and surfaces, and more.Learn how to: * Create three-dimensional objects on your PC * Move your objects or yourself around in a virtual world * Use techniques for fast real-time rendering on Windows, Mac OS X, and Linux. * Make use of OpenGL hardware acceleration * Create interactive three-dimensional scenes * Take advantage of programmable graphics hardware with the new OpenGL shading language CD-ROM includes: * Complete source code for all example programs (Windows, Mac OS X, and Linux) * The GLUT Library and Render Monkey for Windows * Demo Version of Right Hemisphere’s Deep Exploration * The Complete OpenGL specification in Adobe Acrobat Format * A Collection of additional OpenGL example programs”

Table of contents :
OpenGL superbible, 4th Edition……Page 1
Table of Contents……Page 12
Preface……Page 28
About the Authors……Page 36
What’s New in This Edition……Page 38
Part I: The Old Testament……Page 39
Part III: The Apocrypha……Page 41
About the Companion Web Site……Page 42
Part I: The Old Testament……Page 44
A Brief History of Computer Graphics……Page 46
A Survey of 3D Effects……Page 51
Common Uses for 3D Graphics……Page 56
Basic 3D Programming Principles……Page 60
Summary……Page 67
What Is OpenGL?……Page 70
How Does OpenGL Work?……Page 75
OpenGL: An API, Not a Language……Page 78
API Specifics……Page 80
Platform Independence……Page 83
Animation with OpenGL and GLUT……Page 98
The OpenGL State Machine……Page 102
OpenGL Errors……Page 104
Identifying the Version……Page 105
Using Extensions……Page 106
Summary……Page 108
3 Drawing in Space: Geometric Primitives and Buffers……Page 110
Setting Up a 3D Canvas……Page 111
A 3D Point: The Vertex……Page 113
Draw Something!……Page 114
Setting the Point Size……Page 118
Drawing Lines in 3D……Page 122
Drawing Triangles in 3D……Page 131
Building Solid Objects……Page 135
Other Primitives……Page 144
Other Buffer Tricks……Page 154
Summary……Page 163
Is This the Dreaded Math Chapter?……Page 164
Understanding Transformations……Page 165
The Matrix: Mathematical Currency for 3D Graphics……Page 171
Using Projections……Page 183
Advanced Matrix Manipulation……Page 191
Moving Around in OpenGL Using Cameras and Actors……Page 198
Bringing It All Together……Page 202
Summary……Page 208
5 Color, Materials, and Lighting: The Basics……Page 210
What Is Color?……Page 211
PC Color Hardware……Page 214
PC Display Modes……Page 216
Using Color in OpenGL……Page 217
Color in the Real World……Page 223
Materials in the Real World……Page 227
Adding Light to a Scene……Page 229
Using a Light Source……Page 233
Lighting Effects……Page 244
Putting It All Together……Page 250
Shadows……Page 258
Summary……Page 264
Blending……Page 266
Applying Fog……Page 277
Accumulation Buffer……Page 281
Other Color Operations……Page 285
Summary……Page 287
7 Imaging with OpenGL……Page 288
Bitmaps……Page 289
Pixel Packing……Page 294
Pixmaps……Page 295
More Fun with Pixels……Page 305
The Imaging “Subset” and Pipeline……Page 320
Summary……Page 338
8 Texture Mapping: The Basics……Page 340
Loading Textures……Page 341
A Simple 2D Example……Page 348
Texture Environment……Page 353
Texture Parameters……Page 355
Texture Objects……Page 367
Summary……Page 376
Secondary Colour……Page 378
Anisotropic Filtering……Page 381
Texture Compression……Page 384
Texture Coordinate Generation……Page 387
Multitexture……Page 399
Texture Combiners……Page 406
Point Sprites……Page 408
Summary……Page 412
10 Curves and Surfaces……Page 414
Built-in Surfaces……Page 415
Bézier Curves and Surfaces……Page 425
NURBS……Page 438
Tessellation……Page 446
Summary……Page 456
11 It’s All About the Pipeline: Faster Geometry Throughput……Page 458
Display Lists……Page 459
Vertex Arrays……Page 465
Vertex Buffer Objects……Page 487
Summary……Page 492
12 Interactive Graphics……Page 494
Selection……Page 495
A Feedback Example……Page 510
Summary……Page 517
13 Occlusion Queries: Why Do More Work Than You Need To?……Page 518
The World Before Occlusion Queries……Page 519
Bounding Boxes……Page 522
Querying the Query Object……Page 527
Best Practices……Page 529
Summary……Page 530
14 Depth Textures and Shadows……Page 532
Be That Light……Page 533
A New Kind of Texture……Page 535
Draw the Shadows First?!……Page 537
And Then There Was Light……Page 538
Two Out of Three Ain’t Bad……Page 546
A Few Words About Polygon Offset……Page 547
Summary……Page 548
Part II: The New Testament……Page 550
15 Programmable Pipeline: This Isn’t Your Father’s OpenGL……Page 552
Out with the Old……Page 553
In with the New……Page 558
OpenGL Shading Language: A First Glimpse……Page 563
Managing GLSL Shaders……Page 565
Variables……Page 569
Expressions……Page 574
Control Flow……Page 578
Summary……Page 582
16 Vertex Shading: Do-It-Yourself Transform, Lighting, and Texgen……Page 584
Getting Your Feet Wet……Page 585
Diffuse Lighting……Page 586
Specular Lighting……Page 588
Improved Specular Lighting……Page 590
Per-Vertex Fog……Page 594
Per-Vertex Point Size……Page 597
Customized Vertex Transformation……Page 598
Vertex Blending……Page 600
Summary……Page 603
17 Fragment Shading: Empower Your Pixel Processing……Page 604
Color Conversion……Page 605
Image Processing……Page 611
Lighting……Page 619
Procedural Texture Mapping……Page 624
Summary……Page 637
Pixel Buffer Objects……Page 638
Framebuffer Objects……Page 645
Floating-Point Textures……Page 659
Making Your Whites Whiter and Your Brights Brighter……Page 667
Summary……Page 675
Part III: The Apocrypha……Page 676
19 Wiggle: OpenGL on Windows……Page 678
OpenGL Implementations on Windows……Page 679
Basic Windows Rendering……Page 682
Putting It All Together……Page 692
OpenGL and Windows Fonts……Page 703
Full-Screen Rendering……Page 708
Multithreaded Rendering……Page 712
OpenGL and WGL Extensions……Page 713
Summary……Page 721
20 OpenGL on Mac OS X……Page 722
GLUT……Page 723
OpenGL with Carbon……Page 726
OpenGL with Cocoa……Page 736
Full-Screen Rendering……Page 743
Summary……Page 748
The Basics……Page 750
Setup……Page 751
GLUT……Page 754
GLX—Dealing with the X Windows Interface……Page 755
Putting It All Together……Page 766
Summary……Page 771
OpenGL on a Diet……Page 772
Which Version Is Right for You?……Page 775
The ES Environment……Page 791
EGL: A New Windowing Environment……Page 794
Negotiating Embedded Environments……Page 803
Putting OpenGL ES into Action……Page 804
Summary……Page 809
3D Graphics Books……Page 810
Web Sites……Page 811
B……Page 814
E……Page 815
O……Page 816
S……Page 817
W……Page 818
Overview of Appendix C……Page 820
Index……Page 1178
A……Page 1181
B……Page 1182
C……Page 1184
D……Page 1188
E……Page 1190
F……Page 1194
G……Page 1196
H……Page 1215
I……Page 1216
L……Page 1217
M……Page 1219
N……Page 1221
O……Page 1222
P……Page 1224
R……Page 1229
S……Page 1230
T……Page 1235
V……Page 1238
W……Page 1239
X–Z……Page 1241

Reviews

There are no reviews yet.

Be the first to review “OpenGL SuperBible: Comprehensive Tutorial and Reference”
Shopping Cart
Scroll to Top