http://fabacademy.org/2020/labs/ulb/students/quentin-bolsee/assignments/week13/#frep_gpupy-an-opengl-port-of-freppy