learning GLSL with a teapot