Bailey / Cunningham | Graphics Shaders | E-Book | sack.de
E-Book

E-Book, Englisch, 518 Seiten

Bailey / Cunningham Graphics Shaders

Theory and Practice, Second Edition
2. Auflage 2011
ISBN: 978-1-4398-6775-4
Verlag: Taylor & Francis
Format: PDF
Kopierschutz: Adobe DRM (»Systemvoraussetzungen)

Theory and Practice, Second Edition

E-Book, Englisch, 518 Seiten

ISBN: 978-1-4398-6775-4
Verlag: Taylor & Francis
Format: PDF
Kopierschutz: Adobe DRM (»Systemvoraussetzungen)



Graphics Shaders: Theory and Practice is intended for a second course in computer graphics at the undergraduate or graduate level, introducing shader programming in general, but focusing on the GLSL shading language. While teaching how to write programmable shaders, the authors also teach and reinforce the fundamentals of computer graphics. The second edition has been updated to incorporate changes in the OpenGL API (OpenGL 4.x and GLSL 4.x0) and also has a chapter on the new tessellation shaders, including many practical examples.

The book starts with a quick review of the graphics pipeline, emphasizing features that are rarely taught in introductory courses, but are immediately exposed in shader work. It then covers shader-specific theory for vertex, tessellation, geometry, and fragment shaders using the GLSL 4.x0 shading language. The text also introduces the freely available glman tool that enables you to develop, test, and tune shaders separately from the applications that will use them. The authors explore how shaders can be used to support a wide variety of applications and present examples of shaders in 3D geometry, scientific visualization, geometry morphing, algorithmic art, and more.

Features of the Second Edition:

- Written using the most recent specification releases (OpenGL 4.x and GLSL 4.x0) including code examples brought up-to-date with the current standard of the GLSL language.

- More examples and more exercises

- A chapter on tessellation shaders

- An expanded Serious Fun chapter with examples that illustrate using shaders to produce fun effects

- A discussion of how to handle the major changes occurring in the OpenGL standard, and some C++ classes to help you manage that transition

The authors thoroughly explain the concepts, use sample code to describe details of the concepts, and then challenge you to extend the examples. They provide sample source code for many of the book’s examples at www.cgeducation.org

Bailey / Cunningham Graphics Shaders jetzt bestellen!

Zielgruppe


Computer graphics professionals and students, computer game programmers, and computer graphics and game development societies.

Weitere Infos & Material


The Fixed-Function Graphics Pipeline
The Traditional View
How the Traditional View Is Implemented
Vertex Arrays
Conclusions

OpenGL Shader Evolution
History of Shaders
OpenGL Shader History
OpenGL ES
How Can You Respond to These Changes?
Our Approach in This Book

Fundamental Shader Concepts
Shaders in the Graphics Pipeline
The GLSL Shading Language
Passing Data from Your Application into Shaders

Using glman
Using glman
GLIB Scene Creation
More on Textures and Noise
Functions in the glman Interface Window

The GLSL Shader Language
Factors that Shape Shader Languages
General GLSL Language Concepts
Language Details
Compatibility Mode
Summary

Lighting
The ADS Lighting Model
Types of Lights
Setting Up Lighting for Shading

Vertex Shaders
Vertex Shaders in the Graphics Pipeline
Replacing Fixed-Function Graphics with Vertex Shaders
Going beyond the Fixed-Function Pipeline with Vertex Shaders
Vertex Modification
Issues in Vertex Shaders
Summary

Fragment Shaders and Surface Appearance
Basic Function of a Fragment Shader
Fragment Shader Processing
Replacing Fixed-Function Processing with Fragment Shaders
What Follows a Fragment Shader?
Additional Shader Effects

Surface Textures in the Fragment Shader
Texture Coordinates
Traditional Texture Mapping
GLSL Texture Mapping
Render to Texture
Render to Texture for Multipass Rendering in glman

Noise
Fundamental Noise Concepts
Other Noise Concepts
Some Examples of Noise in Different Environments
Advanced Noise Topics
Using Noisegraph

Image Manipulation with Shaders
Basic Concepts
Single-Image Manipulation
The Image Blending Process
Blending an Image with a Constant Base Image
Blending an Image with a Version of Itself
Blending Two Different Images
Notes

Geometry Shader Concepts and Examples
What Does the Geometry Shader Do?
Normals in Geometry Shaders
Examples

Tessellation Shaders
What Are Tessellation Shaders?
Tessellation Shader Concepts
Examples
Summary

The GLSL API
Shaders in the OpenGL Programming Process
How Is a GLSL Shader Program Created?
Creating and Compiling Shader Objects
Creating, Attaching, Linking, and Activating Shader Programs
Passing Data into Shaders

Using Shaders for Scientific Visualization
Image-Based Visualization Techniques
Hyperbolic Geometry
3D Scalar Data Visualization
More on Transfer Functions
Passing in Data Values with Your Geometry
Terrain Bump-Mapping
Flow Visualization
Geometry Visualization

Serious Fun
Light Interference
Lens Effects
Bathroom Glass
Atmospheric Effects
Fun with One
Using the glman Timer Function
Disco Ball
Fog, with and without Noise
Morphing 3D Geometry
Algorithmic Art
Making Information Visible through Motion
An Explosion Shader

Appendices
References
Index

Exercises appear at the end of each chapter.


Mike Bailey is a professor of computer science at Oregon State University. Dr. Bailey is a member of ACM, SIGGRAPH, IEEE, ASME. He earned a Ph.D. in computer graphics and computer aided design from Purdue University. His areas of interest include scientific visualization, high performance computer graphics, GPU programming, solid freeform fabrication, geometric modeling, and computer aided design and analysis.

Steve Cunningham is a professor emeritus of computer science at California State University Stanislaus. A member of ACM SIGGRAPH, ACM SIGCSE, and Eurographics, he has been actively engaged in computer graphics education for many years.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.