glfw3, both availabe via homebrew:
$ brew install glew && brew install glfw3
$ make phong
Effervescent bubbles were built up in stepsShader #0 In which, we create a baby shader to test our development setup
Shader #1 In which, we test out gl_FragCoord
Shader #2 In which, we remember that we don't need gl_FragCoord and can just use the interpolated values from a drawn square.
Shader #3 In which, we expand our fictional world to include a sphere and a camera. If a ray emanating from the cemera through a pixel intersects the sphere, we draw that pixel in white.
Shader #4 In which, we compute the points at which a ray intersects the sphere, and then use that point to compute diffuse shading.