https://github.com/ssloy/tinyraytracer/wiki/Part-1:-understandable-raytracing https://www.npmjs.com/package/gl-vec3 https://en.wikipedia.org/wiki/Netpbm_format http://kylehalladay.com/blog/tutorial/math/2013/12/24/Ray-Sphere-Intersection.html