OpenGL 4 Shading Language Cookbook

David Wolff

  • 出版商: Packt Publishing
  • 出版日期: 2018-09-28
  • 售價: $1,780
  • 貴賓價: 9.5$1,691
  • 語言: 英文
  • 頁數: 472
  • 裝訂: Paperback
  • ISBN: 1789342252
  • ISBN-13: 9781789342253
  • 相關分類: OpenGL
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

Over 70 recipes that cover advanced techniques for 3D programming such as lighting, shading, textures, particle systems, and image processing with OpenGL 4.6

Key Features

  • Explore techniques for implementing shadows using shadow maps and shadow volumes
  • Learn to use GLSL features such as compute, geometry, and tessellation shaders
  • Use GLSL to create a wide variety of modern, realistic visual effects

Book Description

OpenGL 4 Shading Language Cookbook, Third Edition provides easy-to-follow recipes that first walk you through the theory and background behind each technique, and then proceed to showcase and explain the GLSL and OpenGL code needed to implement them.

The book begins by familiarizing you with beginner-level topics such as compiling and linking shader programs, saving and loading shader binaries (including SPIR-V), and using an OpenGL function loader library. We then proceed to cover basic lighting and shading effects. After that, you'll learn to use textures, produce shadows, and use geometry and tessellation shaders. Topics such as particle systems, screen-space ambient occlusion, deferred rendering, depth-based tessellation, and physically based rendering will help you tackle advanced topics.

OpenGL 4 Shading Language Cookbook, Third Edition also covers advanced topics such as shadow techniques (including the two of the most common techniques: shadow maps and shadow volumes). You will learn how to use noise in shaders and how to use compute shaders.

The book provides examples of modern shading techniques that can be used as a starting point for programmers to expand upon to produce modern, interactive, 3D computer-graphics applications.

What you will learn

  • Compile, debug, and communicate with shader programs
  • Use compute shaders for physics, animation, and general computing
  • Learn about features such as shader storage buffer objects and image load/store
  • Utilize noise in shaders and learn how to use shaders in animations
  • Use textures for various effects including cube maps for reflection or refraction
  • Understand physically based reflection models and the SPIR-V Shader binary
  • Learn how to create shadows using shadow maps or shadow volumes
  • Create particle systems that simulate smoke, fire, and other effects

Who this book is for

If you are a graphics programmer looking to learn the GLSL shading language, this book is for you. A basic understanding of 3D graphics and programming experience with C++ are required.

商品描述(中文翻譯)

超過70個食譜,涵蓋OpenGL 4.6的高級3D編程技術,包括照明、著色、紋理、粒子系統和圖像處理。

主要特點:

- 探索使用陰影映射和陰影體實現陰影的技術。
- 學習使用GLSL的計算、幾何和曲面細分著色器。
- 使用GLSL創建各種現代、逼真的視覺效果。

書籍描述:

《OpenGL 4 Shading Language Cookbook, Third Edition》提供易於理解的食譜,首先介紹每個技術背後的理論和背景,然後展示並解釋實現它們所需的GLSL和OpenGL代碼。

本書首先使您熟悉初級主題,如編譯和鏈接著色器程序、保存和加載著色器二進制文件(包括SPIR-V)以及使用OpenGL函數加載器庫。然後,我們繼續介紹基本的照明和著色效果。之後,您將學習使用紋理、生成陰影以及使用幾何和曲面細分著色器。粒子系統、屏幕空間環境遮蔽、延遲渲染、基於深度的曲面細分和基於物理的渲染等主題將幫助您應對高級主題。

《OpenGL 4 Shading Language Cookbook, Third Edition》還涵蓋了陰影技術等高級主題(包括兩種最常見的技術:陰影映射和陰影體)。您將學習如何在著色器中使用噪聲以及如何使用計算著色器。

本書提供了現代著色技術的示例,可作為程序員開始擴展以製作現代、互動的3D計算機圖形應用程序的起點。

您將學到什麼:

- 編譯、調試和與著色器程序通信。
- 使用計算著色器進行物理、動畫和一般計算。
- 了解諸如著色器存儲緩衝對象和圖像加載/存儲等功能。
- 在著色器中使用噪聲,並學習如何在動畫中使用著色器。
- 使用紋理實現各種效果,包括用於反射或折射的立方體貼圖。
- 理解基於物理的反射模型和SPIR-V著色器二進制。
- 學習如何使用陰影映射或陰影體創建陰影。
- 創建模擬煙霧、火焰和其他效果的粒子系統。

本書適合對GLSL著色語言有興趣的圖形程序員閱讀。需要基本的3D圖形理解和C++編程經驗。

目錄大綱

Table of Contents

  1. Getting Started with GLSL
  2. Working with GLSL programs
  3. The Basics of GLSL Shaders
  4. Lighting and Shading
  5. Using Textures
  6. Image Processing and Screen Space Techniques
  7. Using Geometry and Tessellation Shaders
  8. Shadows
  9. Using Noise in Shaders
  10. Particle Systems and Animation
  11. Using Compute Shaders

目錄大綱(中文翻譯)

目錄


  1. GLSL 入門

  2. 使用 GLSL 程式

  3. GLSL 着色器基礎

  4. 光照和陰影

  5. 使用紋理

  6. 圖像處理和螢幕空間技術

  7. 使用幾何和曲面細分着色器

  8. 陰影

  9. 在着色器中使用噪音

  10. 粒子系統和動畫

  11. 使用計算着色器