Cargando…

OpenGL 4 Shading Language Cookbook : Build High-Quality, Real-time 3D Graphics with OpenGL 4. 6, GLSL 4. 6 and C++17, 3rd Edition.

OpenGL 4 Shading Language Cookbook covers 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 it.

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Wolff, David
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Publishing Ltd, 2018.
Edición:3rd ed.
Temas:
Acceso en línea:Texto completo
Tabla de Contenidos:
  • Intro; Cover; Title Page; Copyright and Credits; Packt Upsell; Contributors; Table of Contents; Preface; Chapter 1: Getting Started with GLSL; Introduction; GLSL; Profiles
  • core versus compatibility; Using a loading library to access the latest OpenGL functionality; Getting ready; How to do it ... ; How it works ... ; There's more ... ; See also; Using GLM for mathematics; Getting ready; How to do it ... ; How it works ... ; There's more ... ; Using the GLM types as input to OpenGL; See also; Determining the GLSL and OpenGL version; How to do it ... ; How it works ... ; There's more ... ; Compiling a shader.
  • Getting readyHow to do it ... ; How it works ... ; There's more ... ; Deleting a shader object; See also; Linking a shader program; Getting ready; How to do it ... ; How it works ... ; There's more ... ; Shader input/output variables; Deleting a shader program; See also; Saving and loading a shader binary; Getting ready; How to do it ... ; How it works ... ; See also; Loading a SPIR-V shader program; Getting ready; How to do it ... ; How it works ... ; There's more ... ; See also; Chapter 2: Working with GLSL Programs; Introduction; Sending data to a shader using vertex attributes and vertex buffer objects.
  • Getting readyHow to do it ... ; How it works ... ; There's more ... ; Separate attribute format; Fragment shader output; Specifying attribute indexes without using layout qualifiers; Using element arrays; Interleaved arrays; See also; Getting a list of active vertex input attributes and locations; Getting ready; How to do it ... ; How it works ... ; There's more ... ; See also; Sending data to a shader using uniform variables; Getting ready; How to do it ... ; How it works ... ; There's more ... ; See also; Getting a list of active uniform variables; Getting ready; How to do it ... ; How it works ...
  • There's more ... See also; Using uniform blocks and uniform buffer objects; Getting ready; How to do it ... ; How it works ... ; There's more ... ; Using an instance name with a uniform block; Using layout qualifiers with uniform blocks; See also; Using program pipelines; Getting ready; How to do it ... ; How it works ... ; There's more ... ; See also; Getting debug messages; Getting ready; How to do it ... ; How it works ... ; There's more ... ; Building a C++ shader program class; Getting ready; How to do it ... ; How it works ... ; See also; Chapter 3: The Basics of GLSL Shaders; Introduction.
  • Vertex and fragment shadersLearning the basics first; Diffuse and per-vertex shading with a single point light source; Getting ready; How to do it ... ; How it works ... ; There's more ... ; See also; Implementing the Phong reflection model; Getting ready; How to do it ... ; How it works ... ; There's more ... ; Using a nonlocal viewer; Per-vertex versus per-fragment; Directional lights; Light attenuation with distance; See also; Using functions in shaders; Getting ready; How to do it ... ; How it works ... ; There's more ... ; The const qualifier; Function overloading.