https://hgpu.org/?p=2800
Interactive Computer Graphics: A Top-Down Approach Using OpenGL (5th Edition)