Chapter 3. Lights!
In WebGL, we make use of the vertex and fragment shaders to create a lighting model for our scene. Shaders allow us to define a mathematical model that governs how our scene is lit. We will study different algorithms and see examples about their implementation.
A basic knowledge of linear algebra will be really useful to help you understand the contents of this chapter. We will use glMatrix, a JavaScript library that handles most of the vector and matrix operation, so you do not need to worry about the details. Nonetheless, it is paramount to have a conceptual understanding of the linear algebra operations that we will discuss.
In this chapter, we will:
Learn about light sources, normals, and materials
Learn the difference between shading and lighting
Use the Goraud and Phong shading methods, and the Lambertian and Phong lighting models
Define and use uniforms, attributes, and varyings
Work with ESSL, the shading language for WebGL
Discuss relevant WebGL API methods that relate...