OpenGL boilerplate by Benoit Ozell Packets code taken from https://github.com/jeschke/water-wave-packets