OpenGL.Shading.Language.2nd.Edition.(Orange.Book).2006.pdf
(
6793 KB
)
Pobierz
OpenGL Shading Languag 2nd edition (Orange Book)
OpenGL® Shading Language, Second Edition
By Randi J. Rost
...............................................
Publisher:
Addison Wesley Professional
Pub Date:
January 25, 2006
Print ISBN-10:
0-321-33489-2
Print ISBN-13:
978-0-321-33489-3
Pages:
800
Table of Contents | Index
"As the 'Red Book' is known to be the gold standard for OpenGL, the 'Orange Book' is
considered to be the gold standard for the OpenGL Shading Language. With Randi's extensive
knowledge of OpenGL and GLSL, you can be assured you will be learning from a graphics
industry veteran. Within the pages of the second edition you can find topics from beginning
shader development to advanced topics such as the spherical harmonic lighting model and
more."
David Tommeraasen, CEO/Programmer, Plasma Software
"This will be the definitive guide for OpenGL shaders; no other book goes into this detail. Rost
has done an excellent job at setting the stage for shader development, what the purpose is,
how to do it, and how it all fits together. The book includes great examples and details, and
good additional coverage of 2.0 changes!"
Jeffery Galinovsky, Director of Emerging Market Platform Development, Intel Corporation
"The coverage in this new edition of the book is pitched just right to help many new shader-
writers get started, but with enough deep information for the 'old hands.'"
Marc Olano, Assistant Professor, University of Maryland
"This is a really great book on GLSLwell written and organized, very accessible, and with good
real-world examples and sample code. The topics flow naturally and easily, explanatory code
fragments are inserted in very logical places to illustrate concepts, and all in all, this book
makes an excellent tutorial as well as a reference."
John Carey, Chief Technology Officer, C.O.R.E. Feature Animation
OpenGL® Shading Language, Second Edition
, extensively updated for OpenGL 2.0, is the
experienced application programmer's guide to writing shaders. Part reference, part tutorial,
this book thoroughly explains the shift from fixed-functionality graphics hardware to the new
era of programmable graphics hardware and the additions to the OpenGL API that support this
programmability. With OpenGL and shaders written in the OpenGL Shading Language,
applications can perform better, achieving stunning graphics effects by using the capabilities
of both the visual processing unit and the central processing unit.
In this book, you will find a detailed introduction to the OpenGL Shading Language (GLSL) and
the new OpenGL function calls that support it. The text begins by describing the syntax and
semantics of this high-level programming language. Once this foundation has been
established, the book explores the creation and manipulation of shaders using new OpenGL
function calls.
OpenGL® Shading Language, Second Edition
, includes updated descriptions for the
language and all the GLSL entry points added to OpenGL 2.0; new chapters that discuss
lighting, shadows, and surface characteristics; and an under-the-hood look at the
implementation of RealWorldz, the most ambitious GLSL application to date. The second
edition also features 18 extensive new examples of shaders and their underlying algorithms,
including
z
Image-based lighting
z
Lighting with spherical harmonics
z
Ambient occlusion
z
Shadow mapping
z
Volume shadows using deferred lighting
z
Ward's BRDF model
The color plate section illustrates the power and sophistication of the OpenGL Shading
Language. The API Function Reference at the end of the book is an excellent guide to the API
entry points that support the OpenGL Shading Language. Also included is a convenient Quick
Reference Card to GLSL.
OpenGL® Shading Language, Second Edition
By Randi J. Rost
...............................................
Publisher:
Addison Wesley Professional
Pub Date:
January 25, 2006
Print ISBN-10:
0-321-33489-2
Print ISBN-13:
978-0-321-33489-3
Pages:
800
Table of Contents | Index
Copyright
Praise for OpenGL® Shading Language, Second Edition
Praise for the First Edition of OpenGL® Shading Language
Foreword
Foreword to the First Edition
Preface
Intended Audience
About This Book
About the Shader Examples
Errata
Typographical Conventions
About the Author
About the Contributors
Acknowledgments
Chapter 1. Review of OpenGL Basics
Section 1.1. OpenGL History
Section 1.2. OpenGL Evolution
Section 1.3. Execution Model
Section 1.4. The Frame Buffer
Section 1.5. State
Section 1.6. Processing Pipeline
Section 1.7. Drawing Geometry
Section 1.8. Drawing Images
Section 1.9. Coordinate Transforms
Section 1.10. Texturing
Section 1.11. Summary
Section 1.12. Further Information
Chapter 2. Basics
Section 2.1. Introduction to the OpenGL Shading Language
Section 2.2. Why Write Shaders?
Section 2.3. OpenGL Programmable Processors
Section 2.4. Language Overview
Section 2.5. System Overview
Section 2.6. Key Benefits
Section 2.7. Summary
Section 2.8. Further Information
Chapter 3. Language Definition
Section 3.1. Example Shader Pair
Section 3.2. Data Types
Section 3.3. Initializers and Constructors
Section 3.4. Type Conversions
Section 3.5. Qualifiers and Interface to a Shader
Section 3.6. Flow Control
Section 3.7. Operations
Section 3.8. Preprocessor
Section 3.9. Preprocessor Expressions
Section 3.10. Error Handling
Section 3.11. Summary
Section 3.12. Further Information
Chapter 4. The OpenGL Programmable Pipeline
Section 4.1. The Vertex Processor
Section 4.2. The Fragment Processor
Section 4.3. Built-in Uniform Variables
Section 4.4. Built-in Constants
Section 4.5. Interaction with OpenGL Fixed Functionality
Section 4.6. Summary
Section 4.7. Further Information
Chapter 5. Built-in Functions
Section 5.1. Angle and Trigonometry Functions
Section 5.2. Exponential Functions
Section 5.3. Common Functions
Section 5.4. Geometric Functions
Section 5.5. Matrix Functions
Section 5.6. Vector Relational Functions
Section 5.7. Texture Access Functions
Section 5.8. Fragment Processing Functions
Section 5.9. Noise Functions
Section 5.10. Summary
Section 5.11. Further Information
Chapter 6. Simple Shading Example
Section 6.1. Brick Shader Overview
Section 6.2. Vertex Shader
Section 6.3. Fragment Shader
Section 6.4. Observations
Section 6.5. Summary
Section 6.6. Further Information
Chapter 7. OpenGL Shading Language API
Section 7.1. Obtaining Version Information
Section 7.2. Creating Shader Objects
Section 7.3. Compiling Shader Objects
Section 7.4. Linking and Using Shaders
Section 7.5. Cleaning Up
Section 7.6. Query Functions
Section 7.7. Specifying Vertex Attributes
Section 7.8. Specifying Uniform Variables
Section 7.9. Samplers
Section 7.10. Multiple Render Targets
Section 7.11. Development Aids
Section 7.12. Implementation-Dependent API Values
Section 7.13. Application Code for Brick Shaders
Section 7.14. Summary
Section 7.15. Further Information
Chapter 8. Shader Development
Section 8.1. General Principles
Section 8.2. Performance Considerations
Section 8.3. Shader Debugging
Section 8.4. Shader Development Tools
Section 8.5. Scene Graphs
Section 8.6. Summary
Section 8.7. Further Information
Chapter 9. Emulating OpenGL Fixed Functionality
Section 9.1. Transformation
Section 9.2. Light Sources
Section 9.3. Material Properties and Lighting
Section 9.4. Two-Sided Lighting
Section 9.5. No Lighting
Section 9.6. Fog
Section 9.7. Texture Coordinate Generation
Section 9.8. User Clipping
Section 9.9. Texture Application
Section 9.10. Summary
Section 9.11. Further Information
Chapter 10. Stored Texture Shaders
Section 10.1. Access to Texture Maps from a Shader
Section 10.2. Simple Texturing Example
Section 10.3. Multitexturing Example
Section 10.4. Cube Mapping Example
Section 10.5. Another Environment Mapping Example
Section 10.6. Glyph Bombing
Section 10.7. Summary
Section 10.8. Further Information
Chapter 11. Procedural Texture Shaders
Section 11.1. Regular Patterns
Section 11.2. Toy Ball
Section 11.3. Lattice
Section 11.4. Bump Mapping
Section 11.5. Summary
Section 11.6. Further Information
Chapter 12. Lighting
Section 12.1. Hemisphere Lighting
Section 12.2. Image-Based Lighting
Section 12.3. Lighting with Spherical Harmonics
Section 12.4. The ÜberLight Shader
Section 12.5. Summary
Section 12.6. Further Information
Chapter 13. Shadows
Section 13.1. Ambient Occlusion
Section 13.2. Shadow Maps
Section 13.3. Deferred Shading for Volume Shadows
Section 13.4. Summary
Section 13.5. Further Information
Chapter 14. Surface Characteristics
Section 14.1. Refraction
Section 14.2. Diffraction
Section 14.3. BRDF Models
Section 14.4. Polynomial Texture Mapping with BRDF Data
Section 14.5. Summary
Section 14.6. Further Information
Chapter 15. Noise
Section 15.1. Noise Defined
Plik z chomika:
darekisap
Inne pliki z tego folderu:
DirectX 3D Graphics Programming Bible.pdf
(53946 KB)
GameProgrammingGems5-CDROM.rar
(113929 KB)
Game Physics.pdf
(70470 KB)
3D Geometry Tuts.rar
(11543 KB)
Cutting Edge Direct3D Programming.chm
(4949 KB)
Inne foldery tego chomika:
Biblioteka Informatyka
Courseware
Kurs Flash
Kurs MYSQL w PHP
Kurs_PHP
Zgłoś jeśli
naruszono regulamin