OpenGL Programming on Mac OS X
Addison-Wesley Educational Publishers Inc (Verlag)
978-0-321-35652-9 (ISBN)
- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
Leading OpenGL experts Robert Kuehne and J. D. Sullivan thoroughly explain the Mac's diverse OpenGL APIs, both old and new. They illuminate crucial OpenGL setup, configuration, and performance issues that are unique to the Mac platform. Next, they offer practical, start-to-finish guidance for integrating key Mac-native APIs with OpenGL, and leveraging the full power of the Mac platform in your graphics applications.
Coverage includes
A thorough review of Mac hardware and software architectures and their performance implications
In-depth, expert guidance for accessing OpenGL from each of the Mac's core APIs: CGL, AGL, and Cocoa
Interoperating with other Mac APIs: incorporating video with QuickTime, performing image effects with Core Image, and processing CoreVideo data
Analyzing Mac OpenGL application performance, resolving bottlenecks, and leveraging optimizations only available on the Mac
Detecting, integrating, and using OpenGL extensions
An accompanying Web site (www.macopenglbook.com) contains the book's example code, plus additional OpenGL-related resources.
OpenGL® Programming on Mac OS® X will be valuable to Mac programmers seeking to leverage OpenGL's power, OpenGL developers porting their applications to the Mac platform, and cross-platform graphics developers who want to take advantage of the Mac platform's uniquely intuitive style and efficiency.
Robert P. Kuehne leads Blue Newt Software, a consultancy that specializes in helping clients enhance their 3D graphics applications. Formerly Technical Lead for Silicon Graphics' OpenGL Shading Language, Kuehne has been involved with OpenGL since it was created, in roles ranging from programmer to shader compiler developer to SIGGRAPH presenter. He has also been a Macintosh developer since the early 1990s. J. D. Sullivan is an OpenGL driver engineer who has been writing graphics software professionally for more than fifteen years. While at Silicon Graphics, Inc., he was one of the original designers and implementers of the Volumizer API and later worked as part of the OpenGL software team focused on the Cobalt and Krypton graphics chipsets. Since SGI, Sullivan has worked on the Mac as his primary development platform, and he serves on the OpenGL Architecture Review Board.
List of Figures xv
List of Tables xix
List of Examples xxi
Preface xxv
Acknowledgments xxix
About the Authors xxxiChapter 1: Mac OpenGL Introduction 1Why the Mac? 2
Why OpenGL? 3
The Book 4Chapter 2: OpenGL Architecture on OS X 7Overview 7
About OpenGL 7
OpenGL Feature Support 14
API Layers 15
The Mac OS OpenGL Plug-In Architecture 17
Renderers 18
Summary 21Chapter 3: Mac Hardware Architecture 23Overview 23
Data Flow and Limitations 24
Summary 32Chapter 4: Application Programming on OS X 33Overview 33
Mac OS X Versions 33
System Configuration 34
Power Management 34
Filesystem 38
Finding, Verifying, and Filing Bugs 39
Threading 41
Data Parallel Computation: SIMD 42Chapter 5: OpenGL Configuration and Integration 45API Introductions and Overview 46
Configuration API Relationships 49Chapter 6: The CGL API for OpenGL Configuration 55Overview 55
Error Handling 57
Pixel Format Selection 57
Context Management 63
Drawables 77
Using CGL Macros 86
Summary 86Chapter 7: The AGL API for OpenGL Configuration 89Overview 89
Software Layering 90
Pixel Format and Context 91
Additional Topics 104
Alternative Rendering Destinations 109
Summary 120Chapter 8: The Cocoa API for OpenGL Configuration 121Overview 122
NSOpenGLView 122
NSView 133
Additional Topics 140
Alternative Rendering Destinations 152
Summary 162Chapter 9: The GLUT API for OpenGL Configuration 163Overview 164
Configuration and Setup 165
Summary 171Chapter 10: API Interoperability 173Overview 173
Cocoa Image: NSImage 174
QuickTime 184
Summary 193Chapter 11: Performance 195Overview 195
Axioms for Designing High-Performance OpenGL Applications 196
OpenGL for Mac OS X Rules of Thumb for Performance 201
Metrics 207
Efficient Data Management Using Mac OpenGL 209
Efficient Handling of Vertex Data 210
Efficient Handling of Texture Data 221
Textures 225
Shaders 226
Tools 226
Graphics Tools 228
Putting It All Together 237
Summary 243Chapter 12: Mac Platform Compatibility 245Mac OS Versions 245
OpenGL Platform Identification 248
Mac OS Version Identification 249
Summary 251Chapter 13: OpenGL Extensions 253Overview 253
Extension Design and API Integration 254
Extension Styles and Types 256
Identification, Selection, Query, and Usage 257
Utilization and Binding 262
Extension Management Libraries 269
Summary 275Appendix A: X11 APIs for OpenGL Configuration 277Installation 277
Building X11 Applications on OS X 278
X11 Color Models 279Appendix B: Glossary 281Appendix C: The Cocoa API for OpenGL Configuration in Leopard, Mac OS X 10.5 283Overview 284
NSOpenGLView 284
NSView 294
Additional Topics 300
Alternative Rendering Destinations 312
Summary 322Appendix D: Bibliography 323Index 325
Erscheint lt. Verlag | 2.1.2008 |
---|---|
Verlagsort | New Jersey |
Sprache | englisch |
Maße | 236 x 171 mm |
Gewicht | 678 g |
Themenwelt | Informatik ► Betriebssysteme / Server ► Macintosh / Mac OS X |
Informatik ► Grafik / Design ► Digitale Bildverarbeitung | |
ISBN-10 | 0-321-35652-7 / 0321356527 |
ISBN-13 | 978-0-321-35652-9 / 9780321356529 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich