Exhibit #4: Fragment Phong Lighting

What we did here

The code is (nearly) identical to the code from Exhibit 3. The difference is that the shading code has been moved to the fragment shader. Normalizing the normal is important! Try removing the normalization. What happens?